From 67ba3d004300d4f1c42f70989f4a91938172740a Mon Sep 17 00:00:00 2001 From: Warmist Date: Fri, 14 Jun 2013 10:20:36 +0300 Subject: [PATCH 01/72] Added building filter to advfort. --- scripts/gui/advfort.lua | 56 ++++++++++++++++++++++++++++++++++++++--- 1 file changed, 52 insertions(+), 4 deletions(-) diff --git a/scripts/gui/advfort.lua b/scripts/gui/advfort.lua index e29042e54..150aed52b 100644 --- a/scripts/gui/advfort.lua +++ b/scripts/gui/advfort.lua @@ -1,4 +1,6 @@ -- allows to do jobs in adv. mode. + +--keybinding, change to your hearts content. Only the key part. keybinds={ nextJob={key="CUSTOM_SHIFT_T",desc="Next job in the list"}, prevJob={key="CUSTOM_SHIFT_R",desc="Previous job in the list"}, @@ -10,7 +12,17 @@ up_alt2={key="CURSOR_UP_Z_AUX",desc="Use job up"}, use_same={key="A_MOVE_SAME_SQUARE",desc="Use job at the tile you are standing"}, workshop={key="CHANGETAB",desc="Show building menu"}, } - +-- building filters +build_filter={ +forbid_all=true, --this forbits all except the "allow" +allow={"MetalSmithsForge"}, --ignored if forbit_all=false +forbid={"Custom"} --ignored if forbit_all==true +} +build_filter.HUMANish={ +forbid_all=true, +allow={"Masons"}, +forbid={} +} local gui = require 'gui' local wid=require 'gui.widgets' @@ -24,8 +36,35 @@ local tile_attrs = df.tiletype.attrs settings={build_by_items=false,check_inv=false,df_assign=true} - - +function hasValue(tbl,val) + for k,v in pairs(tbl) do + if v==val then + return true + end + end + return false +end +function reverseRaceLookup(id) + return df.global.world.raws.creatures.all[id].creature_id +end +function deon_filter(name,type_id,subtype_id,custom_id, parent) + print(name) + local adv=df.global.world.units.active[0] + local race_filter=build_filter[reverseRaceLookup(adv.race)] + if race_filter then + if race_filter.forbid_all then + return hasValue(race_filter.allow,name) + else + return not hasValue(race_filter.forbid,name) + end + else + if build_filter.forbid_all then + return hasValue(build_filter.allow,name) + else + return not hasValue(build_filter.forbid,name) + end + end +end local mode_name for k,v in ipairs({...}) do --setting parsing if v=="-c" or v=="--cheat" then @@ -176,6 +215,14 @@ function SetCreatureRef(args) end end +function SetWebRef(args) + local pos=args.pos + for k,v in pairs(df.global.world.items.other.ANY_WEBS) do + if v.pos.x==pos.x and v.pos.y==pos.y and v.pos.z==pos.z then + job.general_refs:insert("#",{new=df.general_ref_item,item_id=v.id}) + end + end +end function SetPatientRef(args) local job=args.job local pos=args.pos @@ -785,7 +832,7 @@ function AssignJobToBuild(args) if bld~=nil then CheckAndFinishBuilding(args,bld) else - bdialog.BuildingDialog{on_select=dfhack.curry(BuildingChosen,args),hide_none=true}:show() + bdialog.BuildingDialog{on_select=dfhack.curry(BuildingChosen,args),hide_none=true,building_filter=deon_filter}:show() end return true end @@ -854,6 +901,7 @@ actions={ {"Build" ,AssignJobToBuild,{NoConstructedBuilding}}, {"BuildLast" ,BuildLast,{NoConstructedBuilding}}, {"Clean" ,df.job_type.Clean,{}}, + {"GatherWebs" ,df.job_type.CollectWebs,{--[[HasWeb]]},{SetWebRef}}, } From dc78f16e2bb4faf9ffe44228a4c2d550f64a56e8 Mon Sep 17 00:00:00 2001 From: Japa Date: Mon, 17 Jun 2013 23:53:36 +0530 Subject: [PATCH 02/72] Added a simple unity project that connects to DF and pulls a list of plugins. --- .../Assets/RemoteClient/Basic.cs | 968 ++++++++++++++++++ .../Assets/RemoteClient/BasicApi.cs | 460 +++++++++ .../Assets/RemoteClient/ColorText.cs | 119 +++ .../Assets/RemoteClient/CoreProtocol.cs | 311 ++++++ .../Assets/RemoteClient/RemoteClient.cs | 720 +++++++++++++ .../Assets/RemoteClient/Tools.cs | 690 +++++++++++++ .../unity/simple_sample/Assets/Start.unity | Bin 0 -> 12760 bytes .../unity/simple_sample/Assets/TestScript.cs | 21 + .../simple_sample/Assets/protobuf-net.dll | Bin 0 -> 187904 bytes .../simple_sample/Library/AnnotationManager | Bin 0 -> 4116 bytes .../simple_sample/Library/AssetImportState | 1 + .../simple_sample/Library/AssetServerCacheV3 | Bin 0 -> 5044 bytes .../simple_sample/Library/BuildPlayer.prefs | 0 .../simple_sample/Library/BuildSettings.asset | Bin 0 -> 4116 bytes .../Library/EditorUserBuildSettings.asset | Bin 0 -> 4160 bytes .../Library/EditorUserSettings.asset | Bin 0 -> 4108 bytes .../Library/FailedAssetImports.txt | 0 .../Library/InspectorExpandedItems.asset | Bin 0 -> 4104 bytes .../simple_sample/Library/MonoManager.asset | Bin 0 -> 4100 bytes .../Library/ProjectSettings.asset | Bin 0 -> 15876 bytes .../ScriptAssemblies/Assembly-CSharp.dll | Bin 0 -> 69120 bytes .../ScriptAssemblies/Assembly-CSharp.dll.mdb | Bin 0 -> 19136 bytes .../ScriptAssemblies/CompilationCompleted.txt | 1 + .../unity/simple_sample/Library/ScriptMapper | Bin 0 -> 8420 bytes .../simple_sample/Library/assetDatabase3 | Bin 0 -> 25144 bytes .../unity/simple_sample/Library/expandedItems | Bin 0 -> 4140 bytes .../unity/simple_sample/Library/guidmapper | Bin 0 -> 4580 bytes .../00/00000000000000001000000000000000 | Bin 0 -> 4268 bytes .../00/00000000000000002000000000000000 | Bin 0 -> 4304 bytes .../00/00000000000000003000000000000000 | Bin 0 -> 4296 bytes .../00/00000000000000004000000000000000 | Bin 0 -> 4308 bytes .../00/00000000000000004100000000000000 | Bin 0 -> 4308 bytes .../00/00000000000000005000000000000000 | Bin 0 -> 4296 bytes .../00/00000000000000006000000000000000 | Bin 0 -> 4304 bytes .../00/00000000000000007000000000000000 | Bin 0 -> 4304 bytes .../00/00000000000000008000000000000000 | Bin 0 -> 4308 bytes .../00/00000000000000009000000000000000 | Bin 0 -> 4308 bytes .../00/0000000000000000a000000000000000 | Bin 0 -> 4308 bytes .../00/0000000000000000b000000000000000 | Bin 0 -> 4320 bytes .../00/0000000000000000c000000000000000 | Bin 0 -> 4308 bytes .../26/2678d7ad7ff72d248854d487d8f15c21 | Bin 0 -> 43889 bytes .../36/364a32494f42e934bae30ff47badc45a | Bin 0 -> 25865 bytes .../73/73b3c5754a89e43409dcf23866eb0484 | Bin 0 -> 29561 bytes .../84/8401f7b1211481b469ac746534a896b8 | Bin 0 -> 7713 bytes .../89/8946b1d409fcda6499e46ca0fd310b73 | Bin 0 -> 4296 bytes .../ab/ab257b5c0c7259943a5b614e3dde558e | Bin 0 -> 26333 bytes .../d8/d8595cea157337845be980bcc8978623 | Bin 0 -> 17925 bytes .../e4/e4195866782d0214cb59abbae44f068f | Bin 0 -> 4288 bytes .../e8/e85d437f881938247992e492006de2df | Bin 0 -> 5325 bytes .../eb/eb0b853da2a60f540a81dc515bab1875 | Bin 0 -> 4284 bytes .../ProjectSettings/AudioManager.asset | Bin 0 -> 4124 bytes .../ProjectSettings/DynamicsManager.asset | Bin 0 -> 4280 bytes .../ProjectSettings/EditorBuildSettings.asset | Bin 0 -> 4104 bytes .../ProjectSettings/EditorSettings.asset | Bin 0 -> 4164 bytes .../ProjectSettings/InputManager.asset | Bin 0 -> 5252 bytes .../ProjectSettings/NavMeshLayers.asset | Bin 0 -> 9196 bytes .../ProjectSettings/NetworkManager.asset | Bin 0 -> 4112 bytes .../ProjectSettings/ProjectSettings.asset | Bin 0 -> 15876 bytes .../ProjectSettings/QualitySettings.asset | Bin 0 -> 4716 bytes .../ProjectSettings/TagManager.asset | Bin 0 -> 5352 bytes .../ProjectSettings/TimeManager.asset | Bin 0 -> 4112 bytes library/xml | 2 +- plugins/CMakeLists.txt | 2 +- plugins/isoworld | 2 +- plugins/stonesense | 2 +- 65 files changed, 3295 insertions(+), 4 deletions(-) create mode 100644 clients/unity/simple_sample/Assets/RemoteClient/Basic.cs create mode 100644 clients/unity/simple_sample/Assets/RemoteClient/BasicApi.cs create mode 100644 clients/unity/simple_sample/Assets/RemoteClient/ColorText.cs create mode 100644 clients/unity/simple_sample/Assets/RemoteClient/CoreProtocol.cs create mode 100644 clients/unity/simple_sample/Assets/RemoteClient/RemoteClient.cs create mode 100644 clients/unity/simple_sample/Assets/RemoteClient/Tools.cs create mode 100644 clients/unity/simple_sample/Assets/Start.unity create mode 100644 clients/unity/simple_sample/Assets/TestScript.cs create mode 100644 clients/unity/simple_sample/Assets/protobuf-net.dll create mode 100644 clients/unity/simple_sample/Library/AnnotationManager create mode 100644 clients/unity/simple_sample/Library/AssetImportState create mode 100644 clients/unity/simple_sample/Library/AssetServerCacheV3 create mode 100644 clients/unity/simple_sample/Library/BuildPlayer.prefs create mode 100644 clients/unity/simple_sample/Library/BuildSettings.asset create mode 100644 clients/unity/simple_sample/Library/EditorUserBuildSettings.asset create mode 100644 clients/unity/simple_sample/Library/EditorUserSettings.asset create mode 100644 clients/unity/simple_sample/Library/FailedAssetImports.txt create mode 100644 clients/unity/simple_sample/Library/InspectorExpandedItems.asset create mode 100644 clients/unity/simple_sample/Library/MonoManager.asset create mode 100644 clients/unity/simple_sample/Library/ProjectSettings.asset create mode 100644 clients/unity/simple_sample/Library/ScriptAssemblies/Assembly-CSharp.dll create mode 100644 clients/unity/simple_sample/Library/ScriptAssemblies/Assembly-CSharp.dll.mdb create mode 100644 clients/unity/simple_sample/Library/ScriptAssemblies/CompilationCompleted.txt create mode 100644 clients/unity/simple_sample/Library/ScriptMapper create mode 100644 clients/unity/simple_sample/Library/assetDatabase3 create mode 100644 clients/unity/simple_sample/Library/expandedItems create mode 100644 clients/unity/simple_sample/Library/guidmapper create mode 100644 clients/unity/simple_sample/Library/metadata/00/00000000000000001000000000000000 create mode 100644 clients/unity/simple_sample/Library/metadata/00/00000000000000002000000000000000 create mode 100644 clients/unity/simple_sample/Library/metadata/00/00000000000000003000000000000000 create mode 100644 clients/unity/simple_sample/Library/metadata/00/00000000000000004000000000000000 create mode 100644 clients/unity/simple_sample/Library/metadata/00/00000000000000004100000000000000 create mode 100644 clients/unity/simple_sample/Library/metadata/00/00000000000000005000000000000000 create mode 100644 clients/unity/simple_sample/Library/metadata/00/00000000000000006000000000000000 create mode 100644 clients/unity/simple_sample/Library/metadata/00/00000000000000007000000000000000 create mode 100644 clients/unity/simple_sample/Library/metadata/00/00000000000000008000000000000000 create mode 100644 clients/unity/simple_sample/Library/metadata/00/00000000000000009000000000000000 create mode 100644 clients/unity/simple_sample/Library/metadata/00/0000000000000000a000000000000000 create mode 100644 clients/unity/simple_sample/Library/metadata/00/0000000000000000b000000000000000 create mode 100644 clients/unity/simple_sample/Library/metadata/00/0000000000000000c000000000000000 create mode 100644 clients/unity/simple_sample/Library/metadata/26/2678d7ad7ff72d248854d487d8f15c21 create mode 100644 clients/unity/simple_sample/Library/metadata/36/364a32494f42e934bae30ff47badc45a create mode 100644 clients/unity/simple_sample/Library/metadata/73/73b3c5754a89e43409dcf23866eb0484 create mode 100644 clients/unity/simple_sample/Library/metadata/84/8401f7b1211481b469ac746534a896b8 create mode 100644 clients/unity/simple_sample/Library/metadata/89/8946b1d409fcda6499e46ca0fd310b73 create mode 100644 clients/unity/simple_sample/Library/metadata/ab/ab257b5c0c7259943a5b614e3dde558e create mode 100644 clients/unity/simple_sample/Library/metadata/d8/d8595cea157337845be980bcc8978623 create mode 100644 clients/unity/simple_sample/Library/metadata/e4/e4195866782d0214cb59abbae44f068f create mode 100644 clients/unity/simple_sample/Library/metadata/e8/e85d437f881938247992e492006de2df create mode 100644 clients/unity/simple_sample/Library/metadata/eb/eb0b853da2a60f540a81dc515bab1875 create mode 100644 clients/unity/simple_sample/ProjectSettings/AudioManager.asset create mode 100644 clients/unity/simple_sample/ProjectSettings/DynamicsManager.asset create mode 100644 clients/unity/simple_sample/ProjectSettings/EditorBuildSettings.asset create mode 100644 clients/unity/simple_sample/ProjectSettings/EditorSettings.asset create mode 100644 clients/unity/simple_sample/ProjectSettings/InputManager.asset create mode 100644 clients/unity/simple_sample/ProjectSettings/NavMeshLayers.asset create mode 100644 clients/unity/simple_sample/ProjectSettings/NetworkManager.asset create mode 100644 clients/unity/simple_sample/ProjectSettings/ProjectSettings.asset create mode 100644 clients/unity/simple_sample/ProjectSettings/QualitySettings.asset create mode 100644 clients/unity/simple_sample/ProjectSettings/TagManager.asset create mode 100644 clients/unity/simple_sample/ProjectSettings/TimeManager.asset diff --git a/clients/unity/simple_sample/Assets/RemoteClient/Basic.cs b/clients/unity/simple_sample/Assets/RemoteClient/Basic.cs new file mode 100644 index 000000000..146df0232 --- /dev/null +++ b/clients/unity/simple_sample/Assets/RemoteClient/Basic.cs @@ -0,0 +1,968 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +// Generated from: Basic.proto +namespace dfproto +{ + [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"EnumItemName")] + public partial class EnumItemName : global::ProtoBuf.IExtensible + { + public EnumItemName() {} + + private int _value; + [global::ProtoBuf.ProtoMember(1, IsRequired = true, Name=@"value", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + public int value + { + get { return _value; } + set { _value = value; } + } + + private string _name = ""; + [global::ProtoBuf.ProtoMember(2, IsRequired = false, Name=@"name", DataFormat = global::ProtoBuf.DataFormat.Default)] + [global::System.ComponentModel.DefaultValue("")] + public string name + { + get { return _name; } + set { _name = value; } + } + + private int _bit_size = (int)1; + [global::ProtoBuf.ProtoMember(3, IsRequired = false, Name=@"bit_size", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + [global::System.ComponentModel.DefaultValue((int)1)] + public int bit_size + { + get { return _bit_size; } + set { _bit_size = value; } + } + private global::ProtoBuf.IExtension extensionObject; + global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) + { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } + } + + [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"BasicMaterialId")] + public partial class BasicMaterialId : global::ProtoBuf.IExtensible + { + public BasicMaterialId() {} + + private int _type; + [global::ProtoBuf.ProtoMember(1, IsRequired = true, Name=@"type", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + public int type + { + get { return _type; } + set { _type = value; } + } + private int _index; + [global::ProtoBuf.ProtoMember(2, IsRequired = true, Name=@"index", DataFormat = global::ProtoBuf.DataFormat.ZigZag)] + public int index + { + get { return _index; } + set { _index = value; } + } + private global::ProtoBuf.IExtension extensionObject; + global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) + { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } + } + + [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"BasicMaterialInfo")] + public partial class BasicMaterialInfo : global::ProtoBuf.IExtensible + { + public BasicMaterialInfo() {} + + private int _type; + [global::ProtoBuf.ProtoMember(1, IsRequired = true, Name=@"type", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + public int type + { + get { return _type; } + set { _type = value; } + } + private int _index; + [global::ProtoBuf.ProtoMember(2, IsRequired = true, Name=@"index", DataFormat = global::ProtoBuf.DataFormat.ZigZag)] + public int index + { + get { return _index; } + set { _index = value; } + } + private string _token; + [global::ProtoBuf.ProtoMember(3, IsRequired = true, Name=@"token", DataFormat = global::ProtoBuf.DataFormat.Default)] + public string token + { + get { return _token; } + set { _token = value; } + } + private readonly global::System.Collections.Generic.List _flags = new global::System.Collections.Generic.List(); + [global::ProtoBuf.ProtoMember(4, Name=@"flags", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + public global::System.Collections.Generic.List flags + { + get { return _flags; } + } + + + private int _subtype = (int)-1; + [global::ProtoBuf.ProtoMember(5, IsRequired = false, Name=@"subtype", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + [global::System.ComponentModel.DefaultValue((int)-1)] + public int subtype + { + get { return _subtype; } + set { _subtype = value; } + } + + private int _creature_id = (int)-1; + [global::ProtoBuf.ProtoMember(6, IsRequired = false, Name=@"creature_id", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + [global::System.ComponentModel.DefaultValue((int)-1)] + public int creature_id + { + get { return _creature_id; } + set { _creature_id = value; } + } + + private int _plant_id = (int)-1; + [global::ProtoBuf.ProtoMember(7, IsRequired = false, Name=@"plant_id", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + [global::System.ComponentModel.DefaultValue((int)-1)] + public int plant_id + { + get { return _plant_id; } + set { _plant_id = value; } + } + + private int _histfig_id = (int)-1; + [global::ProtoBuf.ProtoMember(8, IsRequired = false, Name=@"histfig_id", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + [global::System.ComponentModel.DefaultValue((int)-1)] + public int histfig_id + { + get { return _histfig_id; } + set { _histfig_id = value; } + } + + private string _name_prefix = ""; + [global::ProtoBuf.ProtoMember(9, IsRequired = false, Name=@"name_prefix", DataFormat = global::ProtoBuf.DataFormat.Default)] + [global::System.ComponentModel.DefaultValue("")] + public string name_prefix + { + get { return _name_prefix; } + set { _name_prefix = value; } + } + private readonly global::System.Collections.Generic.List _state_color = new global::System.Collections.Generic.List(); + [global::ProtoBuf.ProtoMember(10, Name=@"state_color", DataFormat = global::ProtoBuf.DataFormat.FixedSize)] + public global::System.Collections.Generic.List state_color + { + get { return _state_color; } + } + + private readonly global::System.Collections.Generic.List _state_name = new global::System.Collections.Generic.List(); + [global::ProtoBuf.ProtoMember(11, Name=@"state_name", DataFormat = global::ProtoBuf.DataFormat.Default)] + public global::System.Collections.Generic.List state_name + { + get { return _state_name; } + } + + private readonly global::System.Collections.Generic.List _state_adj = new global::System.Collections.Generic.List(); + [global::ProtoBuf.ProtoMember(12, Name=@"state_adj", DataFormat = global::ProtoBuf.DataFormat.Default)] + public global::System.Collections.Generic.List state_adj + { + get { return _state_adj; } + } + + private readonly global::System.Collections.Generic.List _reaction_class = new global::System.Collections.Generic.List(); + [global::ProtoBuf.ProtoMember(13, Name=@"reaction_class", DataFormat = global::ProtoBuf.DataFormat.Default)] + public global::System.Collections.Generic.List reaction_class + { + get { return _reaction_class; } + } + + private readonly global::System.Collections.Generic.List _reaction_product = new global::System.Collections.Generic.List(); + [global::ProtoBuf.ProtoMember(14, Name=@"reaction_product", DataFormat = global::ProtoBuf.DataFormat.Default)] + public global::System.Collections.Generic.List reaction_product + { + get { return _reaction_product; } + } + + private readonly global::System.Collections.Generic.List _inorganic_flags = new global::System.Collections.Generic.List(); + [global::ProtoBuf.ProtoMember(15, Name=@"inorganic_flags", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + public global::System.Collections.Generic.List inorganic_flags + { + get { return _inorganic_flags; } + } + + [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"Product")] + public partial class Product : global::ProtoBuf.IExtensible + { + public Product() {} + + private string _id; + [global::ProtoBuf.ProtoMember(1, IsRequired = true, Name=@"id", DataFormat = global::ProtoBuf.DataFormat.Default)] + public string id + { + get { return _id; } + set { _id = value; } + } + private int _type; + [global::ProtoBuf.ProtoMember(2, IsRequired = true, Name=@"type", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + public int type + { + get { return _type; } + set { _type = value; } + } + private int _index; + [global::ProtoBuf.ProtoMember(3, IsRequired = true, Name=@"index", DataFormat = global::ProtoBuf.DataFormat.ZigZag)] + public int index + { + get { return _index; } + set { _index = value; } + } + private global::ProtoBuf.IExtension extensionObject; + global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) + { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } + } + + private global::ProtoBuf.IExtension extensionObject; + global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) + { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } + } + + [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"BasicMaterialInfoMask")] + public partial class BasicMaterialInfoMask : global::ProtoBuf.IExtensible + { + public BasicMaterialInfoMask() {} + + private readonly global::System.Collections.Generic.List _states = new global::System.Collections.Generic.List(); + [global::ProtoBuf.ProtoMember(1, Name=@"states", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + public global::System.Collections.Generic.List states + { + get { return _states; } + } + + + private int _temperature = (int)10015; + [global::ProtoBuf.ProtoMember(4, IsRequired = false, Name=@"temperature", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + [global::System.ComponentModel.DefaultValue((int)10015)] + public int temperature + { + get { return _temperature; } + set { _temperature = value; } + } + + private bool _flags = (bool)false; + [global::ProtoBuf.ProtoMember(2, IsRequired = false, Name=@"flags", DataFormat = global::ProtoBuf.DataFormat.Default)] + [global::System.ComponentModel.DefaultValue((bool)false)] + public bool flags + { + get { return _flags; } + set { _flags = value; } + } + + private bool _reaction = (bool)false; + [global::ProtoBuf.ProtoMember(3, IsRequired = false, Name=@"reaction", DataFormat = global::ProtoBuf.DataFormat.Default)] + [global::System.ComponentModel.DefaultValue((bool)false)] + public bool reaction + { + get { return _reaction; } + set { _reaction = value; } + } + [global::ProtoBuf.ProtoContract(Name=@"StateType")] + public enum StateType + { + + [global::ProtoBuf.ProtoEnum(Name=@"Solid", Value=0)] + Solid = 0, + + [global::ProtoBuf.ProtoEnum(Name=@"Liquid", Value=1)] + Liquid = 1, + + [global::ProtoBuf.ProtoEnum(Name=@"Gas", Value=2)] + Gas = 2, + + [global::ProtoBuf.ProtoEnum(Name=@"Powder", Value=3)] + Powder = 3, + + [global::ProtoBuf.ProtoEnum(Name=@"Paste", Value=4)] + Paste = 4, + + [global::ProtoBuf.ProtoEnum(Name=@"Pressed", Value=5)] + Pressed = 5 + } + + private global::ProtoBuf.IExtension extensionObject; + global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) + { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } + } + + [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"JobSkillAttr")] + public partial class JobSkillAttr : global::ProtoBuf.IExtensible + { + public JobSkillAttr() {} + + private int _id; + [global::ProtoBuf.ProtoMember(1, IsRequired = true, Name=@"id", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + public int id + { + get { return _id; } + set { _id = value; } + } + private string _key; + [global::ProtoBuf.ProtoMember(2, IsRequired = true, Name=@"key", DataFormat = global::ProtoBuf.DataFormat.Default)] + public string key + { + get { return _key; } + set { _key = value; } + } + + private string _caption = ""; + [global::ProtoBuf.ProtoMember(3, IsRequired = false, Name=@"caption", DataFormat = global::ProtoBuf.DataFormat.Default)] + [global::System.ComponentModel.DefaultValue("")] + public string caption + { + get { return _caption; } + set { _caption = value; } + } + + private string _caption_noun = ""; + [global::ProtoBuf.ProtoMember(4, IsRequired = false, Name=@"caption_noun", DataFormat = global::ProtoBuf.DataFormat.Default)] + [global::System.ComponentModel.DefaultValue("")] + public string caption_noun + { + get { return _caption_noun; } + set { _caption_noun = value; } + } + + private int _profession = default(int); + [global::ProtoBuf.ProtoMember(5, IsRequired = false, Name=@"profession", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + [global::System.ComponentModel.DefaultValue(default(int))] + public int profession + { + get { return _profession; } + set { _profession = value; } + } + + private int _labor = default(int); + [global::ProtoBuf.ProtoMember(6, IsRequired = false, Name=@"labor", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + [global::System.ComponentModel.DefaultValue(default(int))] + public int labor + { + get { return _labor; } + set { _labor = value; } + } + + private string _type = ""; + [global::ProtoBuf.ProtoMember(7, IsRequired = false, Name=@"type", DataFormat = global::ProtoBuf.DataFormat.Default)] + [global::System.ComponentModel.DefaultValue("")] + public string type + { + get { return _type; } + set { _type = value; } + } + private global::ProtoBuf.IExtension extensionObject; + global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) + { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } + } + + [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"ProfessionAttr")] + public partial class ProfessionAttr : global::ProtoBuf.IExtensible + { + public ProfessionAttr() {} + + private int _id; + [global::ProtoBuf.ProtoMember(1, IsRequired = true, Name=@"id", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + public int id + { + get { return _id; } + set { _id = value; } + } + private string _key; + [global::ProtoBuf.ProtoMember(2, IsRequired = true, Name=@"key", DataFormat = global::ProtoBuf.DataFormat.Default)] + public string key + { + get { return _key; } + set { _key = value; } + } + + private string _caption = ""; + [global::ProtoBuf.ProtoMember(3, IsRequired = false, Name=@"caption", DataFormat = global::ProtoBuf.DataFormat.Default)] + [global::System.ComponentModel.DefaultValue("")] + public string caption + { + get { return _caption; } + set { _caption = value; } + } + + private bool _military = default(bool); + [global::ProtoBuf.ProtoMember(4, IsRequired = false, Name=@"military", DataFormat = global::ProtoBuf.DataFormat.Default)] + [global::System.ComponentModel.DefaultValue(default(bool))] + public bool military + { + get { return _military; } + set { _military = value; } + } + + private bool _can_assign_labor = default(bool); + [global::ProtoBuf.ProtoMember(5, IsRequired = false, Name=@"can_assign_labor", DataFormat = global::ProtoBuf.DataFormat.Default)] + [global::System.ComponentModel.DefaultValue(default(bool))] + public bool can_assign_labor + { + get { return _can_assign_labor; } + set { _can_assign_labor = value; } + } + + private int _parent = default(int); + [global::ProtoBuf.ProtoMember(6, IsRequired = false, Name=@"parent", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + [global::System.ComponentModel.DefaultValue(default(int))] + public int parent + { + get { return _parent; } + set { _parent = value; } + } + private global::ProtoBuf.IExtension extensionObject; + global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) + { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } + } + + [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"UnitLaborAttr")] + public partial class UnitLaborAttr : global::ProtoBuf.IExtensible + { + public UnitLaborAttr() {} + + private int _id; + [global::ProtoBuf.ProtoMember(1, IsRequired = true, Name=@"id", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + public int id + { + get { return _id; } + set { _id = value; } + } + private string _key; + [global::ProtoBuf.ProtoMember(2, IsRequired = true, Name=@"key", DataFormat = global::ProtoBuf.DataFormat.Default)] + public string key + { + get { return _key; } + set { _key = value; } + } + + private string _caption = ""; + [global::ProtoBuf.ProtoMember(3, IsRequired = false, Name=@"caption", DataFormat = global::ProtoBuf.DataFormat.Default)] + [global::System.ComponentModel.DefaultValue("")] + public string caption + { + get { return _caption; } + set { _caption = value; } + } + private global::ProtoBuf.IExtension extensionObject; + global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) + { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } + } + + [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"NameInfo")] + public partial class NameInfo : global::ProtoBuf.IExtensible + { + public NameInfo() {} + + + private string _first_name = ""; + [global::ProtoBuf.ProtoMember(1, IsRequired = false, Name=@"first_name", DataFormat = global::ProtoBuf.DataFormat.Default)] + [global::System.ComponentModel.DefaultValue("")] + public string first_name + { + get { return _first_name; } + set { _first_name = value; } + } + + private string _nickname = ""; + [global::ProtoBuf.ProtoMember(2, IsRequired = false, Name=@"nickname", DataFormat = global::ProtoBuf.DataFormat.Default)] + [global::System.ComponentModel.DefaultValue("")] + public string nickname + { + get { return _nickname; } + set { _nickname = value; } + } + + private int _language_id = (int)-1; + [global::ProtoBuf.ProtoMember(3, IsRequired = false, Name=@"language_id", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + [global::System.ComponentModel.DefaultValue((int)-1)] + public int language_id + { + get { return _language_id; } + set { _language_id = value; } + } + + private string _last_name = ""; + [global::ProtoBuf.ProtoMember(4, IsRequired = false, Name=@"last_name", DataFormat = global::ProtoBuf.DataFormat.Default)] + [global::System.ComponentModel.DefaultValue("")] + public string last_name + { + get { return _last_name; } + set { _last_name = value; } + } + + private string _english_name = ""; + [global::ProtoBuf.ProtoMember(5, IsRequired = false, Name=@"english_name", DataFormat = global::ProtoBuf.DataFormat.Default)] + [global::System.ComponentModel.DefaultValue("")] + public string english_name + { + get { return _english_name; } + set { _english_name = value; } + } + private global::ProtoBuf.IExtension extensionObject; + global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) + { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } + } + + [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"NameTriple")] + public partial class NameTriple : global::ProtoBuf.IExtensible + { + public NameTriple() {} + + private string _normal; + [global::ProtoBuf.ProtoMember(1, IsRequired = true, Name=@"normal", DataFormat = global::ProtoBuf.DataFormat.Default)] + public string normal + { + get { return _normal; } + set { _normal = value; } + } + + private string _plural = ""; + [global::ProtoBuf.ProtoMember(2, IsRequired = false, Name=@"plural", DataFormat = global::ProtoBuf.DataFormat.Default)] + [global::System.ComponentModel.DefaultValue("")] + public string plural + { + get { return _plural; } + set { _plural = value; } + } + + private string _adjective = ""; + [global::ProtoBuf.ProtoMember(3, IsRequired = false, Name=@"adjective", DataFormat = global::ProtoBuf.DataFormat.Default)] + [global::System.ComponentModel.DefaultValue("")] + public string adjective + { + get { return _adjective; } + set { _adjective = value; } + } + private global::ProtoBuf.IExtension extensionObject; + global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) + { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } + } + + [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"UnitCurseInfo")] + public partial class UnitCurseInfo : global::ProtoBuf.IExtensible + { + public UnitCurseInfo() {} + + private uint _add_tags1; + [global::ProtoBuf.ProtoMember(1, IsRequired = true, Name=@"add_tags1", DataFormat = global::ProtoBuf.DataFormat.FixedSize)] + public uint add_tags1 + { + get { return _add_tags1; } + set { _add_tags1 = value; } + } + private uint _rem_tags1; + [global::ProtoBuf.ProtoMember(2, IsRequired = true, Name=@"rem_tags1", DataFormat = global::ProtoBuf.DataFormat.FixedSize)] + public uint rem_tags1 + { + get { return _rem_tags1; } + set { _rem_tags1 = value; } + } + private uint _add_tags2; + [global::ProtoBuf.ProtoMember(3, IsRequired = true, Name=@"add_tags2", DataFormat = global::ProtoBuf.DataFormat.FixedSize)] + public uint add_tags2 + { + get { return _add_tags2; } + set { _add_tags2 = value; } + } + private uint _rem_tags2; + [global::ProtoBuf.ProtoMember(4, IsRequired = true, Name=@"rem_tags2", DataFormat = global::ProtoBuf.DataFormat.FixedSize)] + public uint rem_tags2 + { + get { return _rem_tags2; } + set { _rem_tags2 = value; } + } + + private dfproto.NameTriple _name = null; + [global::ProtoBuf.ProtoMember(5, IsRequired = false, Name=@"name", DataFormat = global::ProtoBuf.DataFormat.Default)] + [global::System.ComponentModel.DefaultValue(null)] + public dfproto.NameTriple name + { + get { return _name; } + set { _name = value; } + } + private global::ProtoBuf.IExtension extensionObject; + global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) + { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } + } + + [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"SkillInfo")] + public partial class SkillInfo : global::ProtoBuf.IExtensible + { + public SkillInfo() {} + + private int _id; + [global::ProtoBuf.ProtoMember(1, IsRequired = true, Name=@"id", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + public int id + { + get { return _id; } + set { _id = value; } + } + private int _level; + [global::ProtoBuf.ProtoMember(2, IsRequired = true, Name=@"level", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + public int level + { + get { return _level; } + set { _level = value; } + } + private int _experience; + [global::ProtoBuf.ProtoMember(3, IsRequired = true, Name=@"experience", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + public int experience + { + get { return _experience; } + set { _experience = value; } + } + private global::ProtoBuf.IExtension extensionObject; + global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) + { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } + } + + [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"UnitMiscTrait")] + public partial class UnitMiscTrait : global::ProtoBuf.IExtensible + { + public UnitMiscTrait() {} + + private int _id; + [global::ProtoBuf.ProtoMember(1, IsRequired = true, Name=@"id", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + public int id + { + get { return _id; } + set { _id = value; } + } + private int _value; + [global::ProtoBuf.ProtoMember(2, IsRequired = true, Name=@"value", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + public int value + { + get { return _value; } + set { _value = value; } + } + private global::ProtoBuf.IExtension extensionObject; + global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) + { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } + } + + [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"BasicUnitInfo")] + public partial class BasicUnitInfo : global::ProtoBuf.IExtensible + { + public BasicUnitInfo() {} + + private int _unit_id; + [global::ProtoBuf.ProtoMember(1, IsRequired = true, Name=@"unit_id", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + public int unit_id + { + get { return _unit_id; } + set { _unit_id = value; } + } + private int _pos_x; + [global::ProtoBuf.ProtoMember(13, IsRequired = true, Name=@"pos_x", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + public int pos_x + { + get { return _pos_x; } + set { _pos_x = value; } + } + private int _pos_y; + [global::ProtoBuf.ProtoMember(14, IsRequired = true, Name=@"pos_y", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + public int pos_y + { + get { return _pos_y; } + set { _pos_y = value; } + } + private int _pos_z; + [global::ProtoBuf.ProtoMember(15, IsRequired = true, Name=@"pos_z", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + public int pos_z + { + get { return _pos_z; } + set { _pos_z = value; } + } + + private dfproto.NameInfo _name = null; + [global::ProtoBuf.ProtoMember(2, IsRequired = false, Name=@"name", DataFormat = global::ProtoBuf.DataFormat.Default)] + [global::System.ComponentModel.DefaultValue(null)] + public dfproto.NameInfo name + { + get { return _name; } + set { _name = value; } + } + private uint _flags1; + [global::ProtoBuf.ProtoMember(3, IsRequired = true, Name=@"flags1", DataFormat = global::ProtoBuf.DataFormat.FixedSize)] + public uint flags1 + { + get { return _flags1; } + set { _flags1 = value; } + } + private uint _flags2; + [global::ProtoBuf.ProtoMember(4, IsRequired = true, Name=@"flags2", DataFormat = global::ProtoBuf.DataFormat.FixedSize)] + public uint flags2 + { + get { return _flags2; } + set { _flags2 = value; } + } + private uint _flags3; + [global::ProtoBuf.ProtoMember(5, IsRequired = true, Name=@"flags3", DataFormat = global::ProtoBuf.DataFormat.FixedSize)] + public uint flags3 + { + get { return _flags3; } + set { _flags3 = value; } + } + private int _race; + [global::ProtoBuf.ProtoMember(6, IsRequired = true, Name=@"race", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + public int race + { + get { return _race; } + set { _race = value; } + } + private int _caste; + [global::ProtoBuf.ProtoMember(7, IsRequired = true, Name=@"caste", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + public int caste + { + get { return _caste; } + set { _caste = value; } + } + + private int _gender = (int)-1; + [global::ProtoBuf.ProtoMember(8, IsRequired = false, Name=@"gender", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + [global::System.ComponentModel.DefaultValue((int)-1)] + public int gender + { + get { return _gender; } + set { _gender = value; } + } + + private int _civ_id = (int)-1; + [global::ProtoBuf.ProtoMember(9, IsRequired = false, Name=@"civ_id", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + [global::System.ComponentModel.DefaultValue((int)-1)] + public int civ_id + { + get { return _civ_id; } + set { _civ_id = value; } + } + + private int _histfig_id = (int)-1; + [global::ProtoBuf.ProtoMember(10, IsRequired = false, Name=@"histfig_id", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + [global::System.ComponentModel.DefaultValue((int)-1)] + public int histfig_id + { + get { return _histfig_id; } + set { _histfig_id = value; } + } + + private int _death_id = (int)-1; + [global::ProtoBuf.ProtoMember(17, IsRequired = false, Name=@"death_id", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + [global::System.ComponentModel.DefaultValue((int)-1)] + public int death_id + { + get { return _death_id; } + set { _death_id = value; } + } + + private uint _death_flags = default(uint); + [global::ProtoBuf.ProtoMember(18, IsRequired = false, Name=@"death_flags", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + [global::System.ComponentModel.DefaultValue(default(uint))] + public uint death_flags + { + get { return _death_flags; } + set { _death_flags = value; } + } + + private int _squad_id = (int)-1; + [global::ProtoBuf.ProtoMember(19, IsRequired = false, Name=@"squad_id", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + [global::System.ComponentModel.DefaultValue((int)-1)] + public int squad_id + { + get { return _squad_id; } + set { _squad_id = value; } + } + + private int _squad_position = (int)-1; + [global::ProtoBuf.ProtoMember(20, IsRequired = false, Name=@"squad_position", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + [global::System.ComponentModel.DefaultValue((int)-1)] + public int squad_position + { + get { return _squad_position; } + set { _squad_position = value; } + } + + private int _profession = (int)-1; + [global::ProtoBuf.ProtoMember(22, IsRequired = false, Name=@"profession", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + [global::System.ComponentModel.DefaultValue((int)-1)] + public int profession + { + get { return _profession; } + set { _profession = value; } + } + + private string _custom_profession = ""; + [global::ProtoBuf.ProtoMember(23, IsRequired = false, Name=@"custom_profession", DataFormat = global::ProtoBuf.DataFormat.Default)] + [global::System.ComponentModel.DefaultValue("")] + public string custom_profession + { + get { return _custom_profession; } + set { _custom_profession = value; } + } + private readonly global::System.Collections.Generic.List _labors = new global::System.Collections.Generic.List(); + [global::ProtoBuf.ProtoMember(11, Name=@"labors", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + public global::System.Collections.Generic.List labors + { + get { return _labors; } + } + + private readonly global::System.Collections.Generic.List _skills = new global::System.Collections.Generic.List(); + [global::ProtoBuf.ProtoMember(12, Name=@"skills", DataFormat = global::ProtoBuf.DataFormat.Default)] + public global::System.Collections.Generic.List skills + { + get { return _skills; } + } + + private readonly global::System.Collections.Generic.List _misc_traits = new global::System.Collections.Generic.List(); + [global::ProtoBuf.ProtoMember(24, Name=@"misc_traits", DataFormat = global::ProtoBuf.DataFormat.Default)] + public global::System.Collections.Generic.List misc_traits + { + get { return _misc_traits; } + } + + + private dfproto.UnitCurseInfo _curse = null; + [global::ProtoBuf.ProtoMember(16, IsRequired = false, Name=@"curse", DataFormat = global::ProtoBuf.DataFormat.Default)] + [global::System.ComponentModel.DefaultValue(null)] + public dfproto.UnitCurseInfo curse + { + get { return _curse; } + set { _curse = value; } + } + private readonly global::System.Collections.Generic.List _burrows = new global::System.Collections.Generic.List(); + [global::ProtoBuf.ProtoMember(21, Name=@"burrows", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + public global::System.Collections.Generic.List burrows + { + get { return _burrows; } + } + + private global::ProtoBuf.IExtension extensionObject; + global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) + { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } + } + + [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"BasicUnitInfoMask")] + public partial class BasicUnitInfoMask : global::ProtoBuf.IExtensible + { + public BasicUnitInfoMask() {} + + + private bool _labors = (bool)false; + [global::ProtoBuf.ProtoMember(1, IsRequired = false, Name=@"labors", DataFormat = global::ProtoBuf.DataFormat.Default)] + [global::System.ComponentModel.DefaultValue((bool)false)] + public bool labors + { + get { return _labors; } + set { _labors = value; } + } + + private bool _skills = (bool)false; + [global::ProtoBuf.ProtoMember(2, IsRequired = false, Name=@"skills", DataFormat = global::ProtoBuf.DataFormat.Default)] + [global::System.ComponentModel.DefaultValue((bool)false)] + public bool skills + { + get { return _skills; } + set { _skills = value; } + } + + private bool _profession = (bool)false; + [global::ProtoBuf.ProtoMember(3, IsRequired = false, Name=@"profession", DataFormat = global::ProtoBuf.DataFormat.Default)] + [global::System.ComponentModel.DefaultValue((bool)false)] + public bool profession + { + get { return _profession; } + set { _profession = value; } + } + + private bool _misc_traits = (bool)false; + [global::ProtoBuf.ProtoMember(4, IsRequired = false, Name=@"misc_traits", DataFormat = global::ProtoBuf.DataFormat.Default)] + [global::System.ComponentModel.DefaultValue((bool)false)] + public bool misc_traits + { + get { return _misc_traits; } + set { _misc_traits = value; } + } + private global::ProtoBuf.IExtension extensionObject; + global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) + { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } + } + + [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"BasicSquadInfo")] + public partial class BasicSquadInfo : global::ProtoBuf.IExtensible + { + public BasicSquadInfo() {} + + private int _squad_id; + [global::ProtoBuf.ProtoMember(1, IsRequired = true, Name=@"squad_id", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + public int squad_id + { + get { return _squad_id; } + set { _squad_id = value; } + } + + private dfproto.NameInfo _name = null; + [global::ProtoBuf.ProtoMember(2, IsRequired = false, Name=@"name", DataFormat = global::ProtoBuf.DataFormat.Default)] + [global::System.ComponentModel.DefaultValue(null)] + public dfproto.NameInfo name + { + get { return _name; } + set { _name = value; } + } + + private string _alias = ""; + [global::ProtoBuf.ProtoMember(3, IsRequired = false, Name=@"alias", DataFormat = global::ProtoBuf.DataFormat.Default)] + [global::System.ComponentModel.DefaultValue("")] + public string alias + { + get { return _alias; } + set { _alias = value; } + } + private readonly global::System.Collections.Generic.List _members = new global::System.Collections.Generic.List(); + [global::ProtoBuf.ProtoMember(4, Name=@"members", DataFormat = global::ProtoBuf.DataFormat.ZigZag)] + public global::System.Collections.Generic.List members + { + get { return _members; } + } + + private global::ProtoBuf.IExtension extensionObject; + global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) + { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } + } + + [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"UnitLaborState")] + public partial class UnitLaborState : global::ProtoBuf.IExtensible + { + public UnitLaborState() {} + + private int _unit_id; + [global::ProtoBuf.ProtoMember(1, IsRequired = true, Name=@"unit_id", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + public int unit_id + { + get { return _unit_id; } + set { _unit_id = value; } + } + private int _labor; + [global::ProtoBuf.ProtoMember(2, IsRequired = true, Name=@"labor", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + public int labor + { + get { return _labor; } + set { _labor = value; } + } + private bool _value; + [global::ProtoBuf.ProtoMember(3, IsRequired = true, Name=@"value", DataFormat = global::ProtoBuf.DataFormat.Default)] + public bool value + { + get { return _value; } + set { _value = value; } + } + private global::ProtoBuf.IExtension extensionObject; + global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) + { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } + } + +} \ No newline at end of file diff --git a/clients/unity/simple_sample/Assets/RemoteClient/BasicApi.cs b/clients/unity/simple_sample/Assets/RemoteClient/BasicApi.cs new file mode 100644 index 000000000..3f9f97984 --- /dev/null +++ b/clients/unity/simple_sample/Assets/RemoteClient/BasicApi.cs @@ -0,0 +1,460 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +// Generated from: BasicApi.proto +// Note: requires additional types generated from: Basic.proto +namespace dfproto +{ + [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"GetWorldInfoOut")] + public partial class GetWorldInfoOut : global::ProtoBuf.IExtensible + { + public GetWorldInfoOut() {} + + private dfproto.GetWorldInfoOut.Mode _mode; + [global::ProtoBuf.ProtoMember(1, IsRequired = true, Name=@"mode", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + public dfproto.GetWorldInfoOut.Mode mode + { + get { return _mode; } + set { _mode = value; } + } + private string _save_dir; + [global::ProtoBuf.ProtoMember(2, IsRequired = true, Name=@"save_dir", DataFormat = global::ProtoBuf.DataFormat.Default)] + public string save_dir + { + get { return _save_dir; } + set { _save_dir = value; } + } + + private dfproto.NameInfo _world_name = null; + [global::ProtoBuf.ProtoMember(3, IsRequired = false, Name=@"world_name", DataFormat = global::ProtoBuf.DataFormat.Default)] + [global::System.ComponentModel.DefaultValue(null)] + public dfproto.NameInfo world_name + { + get { return _world_name; } + set { _world_name = value; } + } + + private int _civ_id = default(int); + [global::ProtoBuf.ProtoMember(4, IsRequired = false, Name=@"civ_id", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + [global::System.ComponentModel.DefaultValue(default(int))] + public int civ_id + { + get { return _civ_id; } + set { _civ_id = value; } + } + + private int _site_id = default(int); + [global::ProtoBuf.ProtoMember(5, IsRequired = false, Name=@"site_id", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + [global::System.ComponentModel.DefaultValue(default(int))] + public int site_id + { + get { return _site_id; } + set { _site_id = value; } + } + + private int _group_id = default(int); + [global::ProtoBuf.ProtoMember(6, IsRequired = false, Name=@"group_id", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + [global::System.ComponentModel.DefaultValue(default(int))] + public int group_id + { + get { return _group_id; } + set { _group_id = value; } + } + + private int _race_id = default(int); + [global::ProtoBuf.ProtoMember(7, IsRequired = false, Name=@"race_id", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + [global::System.ComponentModel.DefaultValue(default(int))] + public int race_id + { + get { return _race_id; } + set { _race_id = value; } + } + + private int _player_unit_id = default(int); + [global::ProtoBuf.ProtoMember(8, IsRequired = false, Name=@"player_unit_id", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + [global::System.ComponentModel.DefaultValue(default(int))] + public int player_unit_id + { + get { return _player_unit_id; } + set { _player_unit_id = value; } + } + + private int _player_histfig_id = default(int); + [global::ProtoBuf.ProtoMember(9, IsRequired = false, Name=@"player_histfig_id", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + [global::System.ComponentModel.DefaultValue(default(int))] + public int player_histfig_id + { + get { return _player_histfig_id; } + set { _player_histfig_id = value; } + } + private readonly global::System.Collections.Generic.List _companion_histfig_ids = new global::System.Collections.Generic.List(); + [global::ProtoBuf.ProtoMember(10, Name=@"companion_histfig_ids", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + public global::System.Collections.Generic.List companion_histfig_ids + { + get { return _companion_histfig_ids; } + } + + [global::ProtoBuf.ProtoContract(Name=@"Mode")] + public enum Mode + { + + [global::ProtoBuf.ProtoEnum(Name=@"MODE_DWARF", Value=1)] + MODE_DWARF = 1, + + [global::ProtoBuf.ProtoEnum(Name=@"MODE_ADVENTURE", Value=2)] + MODE_ADVENTURE = 2, + + [global::ProtoBuf.ProtoEnum(Name=@"MODE_LEGENDS", Value=3)] + MODE_LEGENDS = 3 + } + + private global::ProtoBuf.IExtension extensionObject; + global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) + { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } + } + + [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"ListEnumsOut")] + public partial class ListEnumsOut : global::ProtoBuf.IExtensible + { + public ListEnumsOut() {} + + private readonly global::System.Collections.Generic.List _material_flags = new global::System.Collections.Generic.List(); + [global::ProtoBuf.ProtoMember(1, Name=@"material_flags", DataFormat = global::ProtoBuf.DataFormat.Default)] + public global::System.Collections.Generic.List material_flags + { + get { return _material_flags; } + } + + private readonly global::System.Collections.Generic.List _inorganic_flags = new global::System.Collections.Generic.List(); + [global::ProtoBuf.ProtoMember(2, Name=@"inorganic_flags", DataFormat = global::ProtoBuf.DataFormat.Default)] + public global::System.Collections.Generic.List inorganic_flags + { + get { return _inorganic_flags; } + } + + private readonly global::System.Collections.Generic.List _unit_flags1 = new global::System.Collections.Generic.List(); + [global::ProtoBuf.ProtoMember(3, Name=@"unit_flags1", DataFormat = global::ProtoBuf.DataFormat.Default)] + public global::System.Collections.Generic.List unit_flags1 + { + get { return _unit_flags1; } + } + + private readonly global::System.Collections.Generic.List _unit_flags2 = new global::System.Collections.Generic.List(); + [global::ProtoBuf.ProtoMember(4, Name=@"unit_flags2", DataFormat = global::ProtoBuf.DataFormat.Default)] + public global::System.Collections.Generic.List unit_flags2 + { + get { return _unit_flags2; } + } + + private readonly global::System.Collections.Generic.List _unit_flags3 = new global::System.Collections.Generic.List(); + [global::ProtoBuf.ProtoMember(5, Name=@"unit_flags3", DataFormat = global::ProtoBuf.DataFormat.Default)] + public global::System.Collections.Generic.List unit_flags3 + { + get { return _unit_flags3; } + } + + private readonly global::System.Collections.Generic.List _unit_labor = new global::System.Collections.Generic.List(); + [global::ProtoBuf.ProtoMember(6, Name=@"unit_labor", DataFormat = global::ProtoBuf.DataFormat.Default)] + public global::System.Collections.Generic.List unit_labor + { + get { return _unit_labor; } + } + + private readonly global::System.Collections.Generic.List _job_skill = new global::System.Collections.Generic.List(); + [global::ProtoBuf.ProtoMember(7, Name=@"job_skill", DataFormat = global::ProtoBuf.DataFormat.Default)] + public global::System.Collections.Generic.List job_skill + { + get { return _job_skill; } + } + + private readonly global::System.Collections.Generic.List _cie_add_tag_mask1 = new global::System.Collections.Generic.List(); + [global::ProtoBuf.ProtoMember(8, Name=@"cie_add_tag_mask1", DataFormat = global::ProtoBuf.DataFormat.Default)] + public global::System.Collections.Generic.List cie_add_tag_mask1 + { + get { return _cie_add_tag_mask1; } + } + + private readonly global::System.Collections.Generic.List _cie_add_tag_mask2 = new global::System.Collections.Generic.List(); + [global::ProtoBuf.ProtoMember(9, Name=@"cie_add_tag_mask2", DataFormat = global::ProtoBuf.DataFormat.Default)] + public global::System.Collections.Generic.List cie_add_tag_mask2 + { + get { return _cie_add_tag_mask2; } + } + + private readonly global::System.Collections.Generic.List _death_info_flags = new global::System.Collections.Generic.List(); + [global::ProtoBuf.ProtoMember(10, Name=@"death_info_flags", DataFormat = global::ProtoBuf.DataFormat.Default)] + public global::System.Collections.Generic.List death_info_flags + { + get { return _death_info_flags; } + } + + private readonly global::System.Collections.Generic.List _profession = new global::System.Collections.Generic.List(); + [global::ProtoBuf.ProtoMember(11, Name=@"profession", DataFormat = global::ProtoBuf.DataFormat.Default)] + public global::System.Collections.Generic.List profession + { + get { return _profession; } + } + + private global::ProtoBuf.IExtension extensionObject; + global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) + { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } + } + + [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"ListJobSkillsOut")] + public partial class ListJobSkillsOut : global::ProtoBuf.IExtensible + { + public ListJobSkillsOut() {} + + private readonly global::System.Collections.Generic.List _skill = new global::System.Collections.Generic.List(); + [global::ProtoBuf.ProtoMember(1, Name=@"skill", DataFormat = global::ProtoBuf.DataFormat.Default)] + public global::System.Collections.Generic.List skill + { + get { return _skill; } + } + + private readonly global::System.Collections.Generic.List _profession = new global::System.Collections.Generic.List(); + [global::ProtoBuf.ProtoMember(2, Name=@"profession", DataFormat = global::ProtoBuf.DataFormat.Default)] + public global::System.Collections.Generic.List profession + { + get { return _profession; } + } + + private readonly global::System.Collections.Generic.List _labor = new global::System.Collections.Generic.List(); + [global::ProtoBuf.ProtoMember(3, Name=@"labor", DataFormat = global::ProtoBuf.DataFormat.Default)] + public global::System.Collections.Generic.List labor + { + get { return _labor; } + } + + private global::ProtoBuf.IExtension extensionObject; + global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) + { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } + } + + [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"ListMaterialsIn")] + public partial class ListMaterialsIn : global::ProtoBuf.IExtensible + { + public ListMaterialsIn() {} + + + private dfproto.BasicMaterialInfoMask _mask = null; + [global::ProtoBuf.ProtoMember(1, IsRequired = false, Name=@"mask", DataFormat = global::ProtoBuf.DataFormat.Default)] + [global::System.ComponentModel.DefaultValue(null)] + public dfproto.BasicMaterialInfoMask mask + { + get { return _mask; } + set { _mask = value; } + } + private readonly global::System.Collections.Generic.List _id_list = new global::System.Collections.Generic.List(); + [global::ProtoBuf.ProtoMember(2, Name=@"id_list", DataFormat = global::ProtoBuf.DataFormat.Default)] + public global::System.Collections.Generic.List id_list + { + get { return _id_list; } + } + + + private bool _builtin = default(bool); + [global::ProtoBuf.ProtoMember(3, IsRequired = false, Name=@"builtin", DataFormat = global::ProtoBuf.DataFormat.Default)] + [global::System.ComponentModel.DefaultValue(default(bool))] + public bool builtin + { + get { return _builtin; } + set { _builtin = value; } + } + + private bool _inorganic = default(bool); + [global::ProtoBuf.ProtoMember(4, IsRequired = false, Name=@"inorganic", DataFormat = global::ProtoBuf.DataFormat.Default)] + [global::System.ComponentModel.DefaultValue(default(bool))] + public bool inorganic + { + get { return _inorganic; } + set { _inorganic = value; } + } + + private bool _creatures = default(bool); + [global::ProtoBuf.ProtoMember(5, IsRequired = false, Name=@"creatures", DataFormat = global::ProtoBuf.DataFormat.Default)] + [global::System.ComponentModel.DefaultValue(default(bool))] + public bool creatures + { + get { return _creatures; } + set { _creatures = value; } + } + + private bool _plants = default(bool); + [global::ProtoBuf.ProtoMember(6, IsRequired = false, Name=@"plants", DataFormat = global::ProtoBuf.DataFormat.Default)] + [global::System.ComponentModel.DefaultValue(default(bool))] + public bool plants + { + get { return _plants; } + set { _plants = value; } + } + private global::ProtoBuf.IExtension extensionObject; + global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) + { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } + } + + [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"ListMaterialsOut")] + public partial class ListMaterialsOut : global::ProtoBuf.IExtensible + { + public ListMaterialsOut() {} + + private readonly global::System.Collections.Generic.List _value = new global::System.Collections.Generic.List(); + [global::ProtoBuf.ProtoMember(1, Name=@"value", DataFormat = global::ProtoBuf.DataFormat.Default)] + public global::System.Collections.Generic.List value + { + get { return _value; } + } + + private global::ProtoBuf.IExtension extensionObject; + global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) + { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } + } + + [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"ListUnitsIn")] + public partial class ListUnitsIn : global::ProtoBuf.IExtensible + { + public ListUnitsIn() {} + + + private dfproto.BasicUnitInfoMask _mask = null; + [global::ProtoBuf.ProtoMember(1, IsRequired = false, Name=@"mask", DataFormat = global::ProtoBuf.DataFormat.Default)] + [global::System.ComponentModel.DefaultValue(null)] + public dfproto.BasicUnitInfoMask mask + { + get { return _mask; } + set { _mask = value; } + } + private readonly global::System.Collections.Generic.List _id_list = new global::System.Collections.Generic.List(); + [global::ProtoBuf.ProtoMember(2, Name=@"id_list", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + public global::System.Collections.Generic.List id_list + { + get { return _id_list; } + } + + + private bool _scan_all = default(bool); + [global::ProtoBuf.ProtoMember(5, IsRequired = false, Name=@"scan_all", DataFormat = global::ProtoBuf.DataFormat.Default)] + [global::System.ComponentModel.DefaultValue(default(bool))] + public bool scan_all + { + get { return _scan_all; } + set { _scan_all = value; } + } + + private int _race = default(int); + [global::ProtoBuf.ProtoMember(3, IsRequired = false, Name=@"race", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + [global::System.ComponentModel.DefaultValue(default(int))] + public int race + { + get { return _race; } + set { _race = value; } + } + + private int _civ_id = default(int); + [global::ProtoBuf.ProtoMember(4, IsRequired = false, Name=@"civ_id", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + [global::System.ComponentModel.DefaultValue(default(int))] + public int civ_id + { + get { return _civ_id; } + set { _civ_id = value; } + } + + private bool _dead = default(bool); + [global::ProtoBuf.ProtoMember(6, IsRequired = false, Name=@"dead", DataFormat = global::ProtoBuf.DataFormat.Default)] + [global::System.ComponentModel.DefaultValue(default(bool))] + public bool dead + { + get { return _dead; } + set { _dead = value; } + } + + private bool _alive = default(bool); + [global::ProtoBuf.ProtoMember(7, IsRequired = false, Name=@"alive", DataFormat = global::ProtoBuf.DataFormat.Default)] + [global::System.ComponentModel.DefaultValue(default(bool))] + public bool alive + { + get { return _alive; } + set { _alive = value; } + } + + private bool _sane = default(bool); + [global::ProtoBuf.ProtoMember(8, IsRequired = false, Name=@"sane", DataFormat = global::ProtoBuf.DataFormat.Default)] + [global::System.ComponentModel.DefaultValue(default(bool))] + public bool sane + { + get { return _sane; } + set { _sane = value; } + } + private global::ProtoBuf.IExtension extensionObject; + global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) + { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } + } + + [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"ListUnitsOut")] + public partial class ListUnitsOut : global::ProtoBuf.IExtensible + { + public ListUnitsOut() {} + + private readonly global::System.Collections.Generic.List _value = new global::System.Collections.Generic.List(); + [global::ProtoBuf.ProtoMember(1, Name=@"value", DataFormat = global::ProtoBuf.DataFormat.Default)] + public global::System.Collections.Generic.List value + { + get { return _value; } + } + + private global::ProtoBuf.IExtension extensionObject; + global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) + { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } + } + + [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"ListSquadsIn")] + public partial class ListSquadsIn : global::ProtoBuf.IExtensible + { + public ListSquadsIn() {} + + private global::ProtoBuf.IExtension extensionObject; + global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) + { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } + } + + [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"ListSquadsOut")] + public partial class ListSquadsOut : global::ProtoBuf.IExtensible + { + public ListSquadsOut() {} + + private readonly global::System.Collections.Generic.List _value = new global::System.Collections.Generic.List(); + [global::ProtoBuf.ProtoMember(1, Name=@"value", DataFormat = global::ProtoBuf.DataFormat.Default)] + public global::System.Collections.Generic.List value + { + get { return _value; } + } + + private global::ProtoBuf.IExtension extensionObject; + global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) + { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } + } + + [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"SetUnitLaborsIn")] + public partial class SetUnitLaborsIn : global::ProtoBuf.IExtensible + { + public SetUnitLaborsIn() {} + + private readonly global::System.Collections.Generic.List _change = new global::System.Collections.Generic.List(); + [global::ProtoBuf.ProtoMember(1, Name=@"change", DataFormat = global::ProtoBuf.DataFormat.Default)] + public global::System.Collections.Generic.List change + { + get { return _change; } + } + + private global::ProtoBuf.IExtension extensionObject; + global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) + { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } + } + +} \ No newline at end of file diff --git a/clients/unity/simple_sample/Assets/RemoteClient/ColorText.cs b/clients/unity/simple_sample/Assets/RemoteClient/ColorText.cs new file mode 100644 index 000000000..c98941b01 --- /dev/null +++ b/clients/unity/simple_sample/Assets/RemoteClient/ColorText.cs @@ -0,0 +1,119 @@ +using System; +using UnityEngine; +using AT.MIN; +using dfproto; + +namespace DFHack +{ + public enum color_value + { + COLOR_RESET = -1, + COLOR_BLACK = 0, + COLOR_BLUE, + COLOR_GREEN, + COLOR_CYAN, + COLOR_RED, + COLOR_MAGENTA, + COLOR_BROWN, + COLOR_GREY, + COLOR_DARKGREY, + COLOR_LIGHTBLUE, + COLOR_LIGHTGREEN, + COLOR_LIGHTCYAN, + COLOR_LIGHTRED, + COLOR_LIGHTMAGENTA, + COLOR_YELLOW, + COLOR_WHITE, + COLOR_MAX = COLOR_WHITE + }; + + public class color_ostream + { + string buffer; + public void printerr(string Format, params object[] Parameters) + { + Debug.LogError(Tools.sprintf(Format, Parameters)); + } + public void print(string Format, params object[] Parameters) + { + Debug.Log(Tools.sprintf(Format, Parameters)); + } + public void begin_batch() + { + buffer = ""; + } + public void end_batch() + { + Debug.Log(buffer); + buffer = null; + } + + public void add_text(color_value color, string text) + { + //Debug.Log(text); + buffer += text; + } + + } + public class buffered_color_ostream : color_ostream + { + //protected: + public new void add_text(color_value color, string text) + { + if (text.Length == 0) + return; + + if (buffer.Length == 0) + { + buffer = text; + } + else + { + buffer += text; + } + } + + + + // buffered_color_ostream() {} + // ~buffered_color_ostream() {} + + // const std::list &fragments() { return buffer; } + + protected string buffer; + } + public class color_ostream_proxy : buffered_color_ostream + { + protected color_ostream target; + + //virtual void flush_proxy(); + + public color_ostream_proxy(color_ostream targetIn) + { + target = targetIn; + } + + public virtual color_ostream proxy_target() { return target; } + + public void decode(dfproto.CoreTextNotification data) + { + int cnt = data.fragments.Count; + + if (cnt > 0) + { + target.begin_batch(); + + for (int i = 0; i < cnt; i++) + { + var frag = data.fragments[i]; + + //color_value color = frag.has_color() ? color_value(frag.color()) : COLOR_RESET; + target.add_text(color_value.COLOR_RESET, frag.text); + //target.printerr(data.fragments[i].text); + } + + target.end_batch(); + } + } + } +} \ No newline at end of file diff --git a/clients/unity/simple_sample/Assets/RemoteClient/CoreProtocol.cs b/clients/unity/simple_sample/Assets/RemoteClient/CoreProtocol.cs new file mode 100644 index 000000000..e5536da04 --- /dev/null +++ b/clients/unity/simple_sample/Assets/RemoteClient/CoreProtocol.cs @@ -0,0 +1,311 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +// Generated from: CoreProtocol.proto +namespace dfproto +{ + [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"CoreTextFragment")] + public partial class CoreTextFragment : global::ProtoBuf.IExtensible + { + public CoreTextFragment() {} + + private string _text; + [global::ProtoBuf.ProtoMember(1, IsRequired = true, Name=@"text", DataFormat = global::ProtoBuf.DataFormat.Default)] + public string text + { + get { return _text; } + set { _text = value; } + } + + private dfproto.CoreTextFragment.Color _color = dfproto.CoreTextFragment.Color.COLOR_BLACK; + [global::ProtoBuf.ProtoMember(2, IsRequired = false, Name=@"color", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + [global::System.ComponentModel.DefaultValue(dfproto.CoreTextFragment.Color.COLOR_BLACK)] + public dfproto.CoreTextFragment.Color color + { + get { return _color; } + set { _color = value; } + } + [global::ProtoBuf.ProtoContract(Name=@"Color")] + public enum Color + { + + [global::ProtoBuf.ProtoEnum(Name=@"COLOR_BLACK", Value=0)] + COLOR_BLACK = 0, + + [global::ProtoBuf.ProtoEnum(Name=@"COLOR_BLUE", Value=1)] + COLOR_BLUE = 1, + + [global::ProtoBuf.ProtoEnum(Name=@"COLOR_GREEN", Value=2)] + COLOR_GREEN = 2, + + [global::ProtoBuf.ProtoEnum(Name=@"COLOR_CYAN", Value=3)] + COLOR_CYAN = 3, + + [global::ProtoBuf.ProtoEnum(Name=@"COLOR_RED", Value=4)] + COLOR_RED = 4, + + [global::ProtoBuf.ProtoEnum(Name=@"COLOR_MAGENTA", Value=5)] + COLOR_MAGENTA = 5, + + [global::ProtoBuf.ProtoEnum(Name=@"COLOR_BROWN", Value=6)] + COLOR_BROWN = 6, + + [global::ProtoBuf.ProtoEnum(Name=@"COLOR_GREY", Value=7)] + COLOR_GREY = 7, + + [global::ProtoBuf.ProtoEnum(Name=@"COLOR_DARKGREY", Value=8)] + COLOR_DARKGREY = 8, + + [global::ProtoBuf.ProtoEnum(Name=@"COLOR_LIGHTBLUE", Value=9)] + COLOR_LIGHTBLUE = 9, + + [global::ProtoBuf.ProtoEnum(Name=@"COLOR_LIGHTGREEN", Value=10)] + COLOR_LIGHTGREEN = 10, + + [global::ProtoBuf.ProtoEnum(Name=@"COLOR_LIGHTCYAN", Value=11)] + COLOR_LIGHTCYAN = 11, + + [global::ProtoBuf.ProtoEnum(Name=@"COLOR_LIGHTRED", Value=12)] + COLOR_LIGHTRED = 12, + + [global::ProtoBuf.ProtoEnum(Name=@"COLOR_LIGHTMAGENTA", Value=13)] + COLOR_LIGHTMAGENTA = 13, + + [global::ProtoBuf.ProtoEnum(Name=@"COLOR_YELLOW", Value=14)] + COLOR_YELLOW = 14, + + [global::ProtoBuf.ProtoEnum(Name=@"COLOR_WHITE", Value=15)] + COLOR_WHITE = 15 + } + + private global::ProtoBuf.IExtension extensionObject; + global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) + { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } + } + + [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"CoreTextNotification")] + public partial class CoreTextNotification : global::ProtoBuf.IExtensible + { + public CoreTextNotification() {} + + private readonly global::System.Collections.Generic.List _fragments = new global::System.Collections.Generic.List(); + [global::ProtoBuf.ProtoMember(1, Name=@"fragments", DataFormat = global::ProtoBuf.DataFormat.Default)] + public global::System.Collections.Generic.List fragments + { + get { return _fragments; } + } + + private global::ProtoBuf.IExtension extensionObject; + global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) + { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } + } + + [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"CoreErrorNotification")] + public partial class CoreErrorNotification : global::ProtoBuf.IExtensible + { + public CoreErrorNotification() {} + + private dfproto.CoreErrorNotification.ErrorCode _code; + [global::ProtoBuf.ProtoMember(1, IsRequired = true, Name=@"code", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + public dfproto.CoreErrorNotification.ErrorCode code + { + get { return _code; } + set { _code = value; } + } + [global::ProtoBuf.ProtoContract(Name=@"ErrorCode")] + public enum ErrorCode + { + + [global::ProtoBuf.ProtoEnum(Name=@"CR_LINK_FAILURE", Value=-3)] + CR_LINK_FAILURE = -3, + + [global::ProtoBuf.ProtoEnum(Name=@"CR_WOULD_BREAK", Value=-2)] + CR_WOULD_BREAK = -2, + + [global::ProtoBuf.ProtoEnum(Name=@"CR_NOT_IMPLEMENTED", Value=-1)] + CR_NOT_IMPLEMENTED = -1, + + [global::ProtoBuf.ProtoEnum(Name=@"CR_OK", Value=0)] + CR_OK = 0, + + [global::ProtoBuf.ProtoEnum(Name=@"CR_FAILURE", Value=1)] + CR_FAILURE = 1, + + [global::ProtoBuf.ProtoEnum(Name=@"CR_WRONG_USAGE", Value=2)] + CR_WRONG_USAGE = 2, + + [global::ProtoBuf.ProtoEnum(Name=@"CR_NOT_FOUND", Value=3)] + CR_NOT_FOUND = 3 + } + + private global::ProtoBuf.IExtension extensionObject; + global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) + { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } + } + + [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"EmptyMessage")] + public partial class EmptyMessage : global::ProtoBuf.IExtensible + { + public EmptyMessage() {} + + private global::ProtoBuf.IExtension extensionObject; + global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) + { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } + } + + [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"IntMessage")] + public partial class IntMessage : global::ProtoBuf.IExtensible + { + public IntMessage() {} + + private int _value; + [global::ProtoBuf.ProtoMember(1, IsRequired = true, Name=@"value", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + public int value + { + get { return _value; } + set { _value = value; } + } + private global::ProtoBuf.IExtension extensionObject; + global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) + { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } + } + + [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"IntListMessage")] + public partial class IntListMessage : global::ProtoBuf.IExtensible + { + public IntListMessage() {} + + private readonly global::System.Collections.Generic.List _value = new global::System.Collections.Generic.List(); + [global::ProtoBuf.ProtoMember(1, Name=@"value", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + public global::System.Collections.Generic.List value + { + get { return _value; } + } + + private global::ProtoBuf.IExtension extensionObject; + global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) + { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } + } + + [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"StringMessage")] + public partial class StringMessage : global::ProtoBuf.IExtensible + { + public StringMessage() {} + + private string _value; + [global::ProtoBuf.ProtoMember(1, IsRequired = true, Name=@"value", DataFormat = global::ProtoBuf.DataFormat.Default)] + public string value + { + get { return _value; } + set { _value = value; } + } + private global::ProtoBuf.IExtension extensionObject; + global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) + { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } + } + + [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"StringListMessage")] + public partial class StringListMessage : global::ProtoBuf.IExtensible + { + public StringListMessage() {} + + private readonly global::System.Collections.Generic.List _value = new global::System.Collections.Generic.List(); + [global::ProtoBuf.ProtoMember(1, Name=@"value", DataFormat = global::ProtoBuf.DataFormat.Default)] + public global::System.Collections.Generic.List value + { + get { return _value; } + } + + private global::ProtoBuf.IExtension extensionObject; + global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) + { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } + } + + [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"CoreBindRequest")] + public partial class CoreBindRequest : global::ProtoBuf.IExtensible + { + public CoreBindRequest() {} + + private string _method; + [global::ProtoBuf.ProtoMember(1, IsRequired = true, Name=@"method", DataFormat = global::ProtoBuf.DataFormat.Default)] + public string method + { + get { return _method; } + set { _method = value; } + } + private string _input_msg; + [global::ProtoBuf.ProtoMember(2, IsRequired = true, Name=@"input_msg", DataFormat = global::ProtoBuf.DataFormat.Default)] + public string input_msg + { + get { return _input_msg; } + set { _input_msg = value; } + } + private string _output_msg; + [global::ProtoBuf.ProtoMember(3, IsRequired = true, Name=@"output_msg", DataFormat = global::ProtoBuf.DataFormat.Default)] + public string output_msg + { + get { return _output_msg; } + set { _output_msg = value; } + } + + private string _plugin = ""; + [global::ProtoBuf.ProtoMember(4, IsRequired = false, Name=@"plugin", DataFormat = global::ProtoBuf.DataFormat.Default)] + [global::System.ComponentModel.DefaultValue("")] + public string plugin + { + get { return _plugin; } + set { _plugin = value; } + } + private global::ProtoBuf.IExtension extensionObject; + global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) + { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } + } + + [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"CoreBindReply")] + public partial class CoreBindReply : global::ProtoBuf.IExtensible + { + public CoreBindReply() {} + + private int _assigned_id; + [global::ProtoBuf.ProtoMember(1, IsRequired = true, Name=@"assigned_id", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + public int assigned_id + { + get { return _assigned_id; } + set { _assigned_id = value; } + } + private global::ProtoBuf.IExtension extensionObject; + global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) + { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } + } + + [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"CoreRunCommandRequest")] + public partial class CoreRunCommandRequest : global::ProtoBuf.IExtensible + { + public CoreRunCommandRequest() {} + + private string _command; + [global::ProtoBuf.ProtoMember(1, IsRequired = true, Name=@"command", DataFormat = global::ProtoBuf.DataFormat.Default)] + public string command + { + get { return _command; } + set { _command = value; } + } + private readonly global::System.Collections.Generic.List _arguments = new global::System.Collections.Generic.List(); + [global::ProtoBuf.ProtoMember(2, Name=@"arguments", DataFormat = global::ProtoBuf.DataFormat.Default)] + public global::System.Collections.Generic.List arguments + { + get { return _arguments; } + } + + private global::ProtoBuf.IExtension extensionObject; + global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) + { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } + } + +} \ No newline at end of file diff --git a/clients/unity/simple_sample/Assets/RemoteClient/RemoteClient.cs b/clients/unity/simple_sample/Assets/RemoteClient/RemoteClient.cs new file mode 100644 index 000000000..f23faa761 --- /dev/null +++ b/clients/unity/simple_sample/Assets/RemoteClient/RemoteClient.cs @@ -0,0 +1,720 @@ +/* +https://github.com/peterix/dfhack +Copyright (c) 2009-2012 Petr Mrázek (peterix@gmail.com) + +This software is provided 'as-is', without any express or implied +warranty. In no event will the authors be held liable for any +damages arising from the use of this software. + +Permission is granted to anyone to use this software for any +purpose, including commercial applications, and to alter it and +redistribute it freely, subject to the following restrictions: + +1. The origin of this software must not be misrepresented; you must +not claim that you wrote the original software. If you use this +software in a product, an acknowledgment in the product documentation +would be appreciated but is not required. + +2. Altered source versions must be plainly marked as such, and +must not be misrepresented as being the original software. + +3. This notice may not be removed or altered from any source +distribution. +*/ + +using dfproto; +using System; +using System.Net; +using System.Net.Sockets; +using System.IO; +using System.Text; +using System.Runtime.Serialization; +using System.Runtime.Serialization.Formatters.Binary; +using System.Collections.Generic; +using System.Diagnostics; + +namespace DFHack +{ + using message_type = ProtoBuf.IExtensible; + + public enum command_result + { + CR_LINK_FAILURE = -3, // RPC call failed due to I/O or protocol error + CR_NEEDS_CONSOLE = -2, // Attempt to call interactive command without console + CR_NOT_IMPLEMENTED = -1, // Command not implemented, or plugin not loaded + CR_OK = 0, // Success + CR_FAILURE = 1, // Failure + CR_WRONG_USAGE = 2, // Wrong arguments or ui state + CR_NOT_FOUND = 3 // Target object not found (for RPC mainly) + } + + public enum DFHackReplyCode + { + RPC_REPLY_RESULT = -1, + RPC_REPLY_FAIL = -2, + RPC_REPLY_TEXT = -3, + RPC_REQUEST_QUIT = -4 + } + + class RPCHandshakeHeader + { + public string magic; + public int version; + + public static string REQUEST_MAGIC = "DFHack?\n"; + public static string RESPONSE_MAGIC = "DFHack!\n"; + } + + struct RPCMessageHeader + { + public const int MAX_MESSAGE_SIZE = 8 * 1048576; + + public Int16 id; + public Int32 size; + + public byte[] ConvertToBtyes() + { + List output = new List(); + output.AddRange(BitConverter.GetBytes(id)); + output.AddRange(new byte[2]); + output.AddRange(BitConverter.GetBytes(size)); + return output.ToArray(); + } + string BytesToString(byte[] input) + { + string output = ""; + foreach (byte item in input) + { + if (output.Length > 0) + output += ","; + output += item; + } + return output; + } + } + + /* Protocol description: + * + * 1. Handshake + * + * Client initiates connection by sending the handshake + * request header. The server responds with the response + * magic. Currently both versions must be 1. + * + * 2. Interaction + * + * Requests are done by exchanging messages between the + * client and the server. Messages consist of a serialized + * protobuf message preceeded by RPCMessageHeader. The size + * field specifies the length of the protobuf part. + * + * NOTE: As a special exception, RPC_REPLY_FAIL uses the size + * field to hold the error code directly. + * + * Every callable function is assigned a non-negative id by + * the server. Id 0 is reserved for BindMethod, which can be + * used to request any other id by function name. Id 1 is + * RunCommand, used to call console commands remotely. + * + * The client initiates every call by sending a message with + * appropriate function id and input arguments. The server + * responds with zero or more RPC_REPLY_TEXT:CoreTextNotification + * messages, followed by RPC_REPLY_RESULT containing the output + * of the function if it succeeded, or RPC_REPLY_FAIL with the + * error code if it did not. + * + * 3. Disconnect + * + * The client terminates the connection by sending an + * RPC_REQUEST_QUIT header with zero size and immediately + * closing the socket. + */ + + public class RPCFunctionBase + { + + public message_type p_in_template; + public message_type p_out_template; + + public message_type make_in() + { + return (message_type)Activator.CreateInstance(p_in_template.GetType()); + } + + public message_type input() + { + if (p_in == null) p_in = make_in(); + return p_in; + } + + public message_type make_out() + { + return (message_type)Activator.CreateInstance(p_out_template.GetType()); + } + + public message_type output() + { + if (p_out == null) p_out = make_out(); + return p_out; + } + + public void reset(bool free = false) + { + if (free) + { + p_in = null; + p_out = null; + } + else + { + if (p_in != null) + p_in = (message_type)Activator.CreateInstance(p_in.GetType()); + if (p_out != null) + p_out = (message_type)Activator.CreateInstance(p_out.GetType()); + } + } + + public RPCFunctionBase(message_type input, message_type output) + { + p_in_template = input; + p_out_template = output; + p_in = null; + p_out = null; + } + ~RPCFunctionBase() + { + p_in = null; + p_out = null; + } + + message_type p_in; + message_type p_out; + } + + public class RemoteFunctionBase : RPCFunctionBase + { + public bool bind(RemoteClient client, string name, + string proto = "") + { + return bind(client.default_output(), client, name, proto); + } + public bool bind(color_ostream output, + RemoteClient client, string name, + string proto = "") + { + if (isValid()) + { + if (p_client == client && this.name == name && this.proto == proto) + return true; + + output.printerr("Function already bound to %s::%s\n", + this.proto, this.name); + return false; + } + + this.name = name; + this.proto = proto; + this.p_client = client; + + return client.bind(output, this, name, proto); + } + + public bool isValid() { return (id >= 0); } + + public RemoteFunctionBase(message_type input, message_type output) + : base(input, output) + { + p_client = null; + id = -1; + } + + protected color_ostream default_ostream() + { + return p_client.default_output(); + } + + bool sendRemoteMessage(Socket socket, Int16 id, MemoryStream msg) + { + List buffer = new List(); + + RPCMessageHeader header = new RPCMessageHeader(); + header.id = id; + header.size = (Int32)msg.Length; + buffer.AddRange(header.ConvertToBtyes()); + buffer.AddRange(msg.ToArray()); + + int fullsz = buffer.Count; + + int got = socket.Send(buffer.ToArray()); + return (got == fullsz); + } + + protected command_result execute(color_ostream outString, Input input, Output output) + where Input : message_type, new() + where Output : message_type, new() + { + if (!isValid()) + { + outString.printerr("Calling an unbound RPC function %s::%s.\n", + this.proto, this.name); + return command_result.CR_NOT_IMPLEMENTED; + } + + if (p_client.socket == null) + { + outString.printerr("In call to %s::%s: invalid socket.\n", + this.proto, this.name); + return command_result.CR_LINK_FAILURE; + } + + MemoryStream sendStream = new MemoryStream(); + + ProtoBuf.Serializer.Serialize(sendStream, input); + + long send_size = sendStream.Length; + + if (send_size > RPCMessageHeader.MAX_MESSAGE_SIZE) + { + outString.printerr("In call to %s::%s: message too large: %d.\n", + this.proto, this.name, send_size); + return command_result.CR_LINK_FAILURE; + } + + if (!sendRemoteMessage(p_client.socket, id, sendStream)) + { + outString.printerr("In call to %s::%s: I/O error in send.\n", + this.proto, this.name); + return command_result.CR_LINK_FAILURE; + } + + color_ostream_proxy text_decoder = new color_ostream_proxy(outString); + CoreTextNotification text_data; + + output = new Output(); + //return command_result.CR_OK; + + while (true) + { + RPCMessageHeader header = new RPCMessageHeader(); + byte[] buffer = new byte[8]; + + if (!RemoteClient.readFullBuffer(p_client.socket, buffer, 8)) + { + outString.printerr("In call to %s::%s: I/O error in receive header.\n", + this.proto, this.name); + return command_result.CR_LINK_FAILURE; + } + + header.id = BitConverter.ToInt16(buffer, 0); + header.size = BitConverter.ToInt32(buffer, 4); //because something, somewhere, is fucking retarded + + //outString.print("Received %d:%d.\n", header.id, header.size); + + + if ((DFHackReplyCode)header.id == DFHackReplyCode.RPC_REPLY_FAIL) + if (header.size == (int)command_result.CR_OK) + return command_result.CR_FAILURE; + else + return (command_result)header.size; + + if (header.size < 0 || header.size > RPCMessageHeader.MAX_MESSAGE_SIZE) + { + outString.printerr("In call to %s::%s: invalid received size %d.\n", + this.proto, this.name, header.size); + return command_result.CR_LINK_FAILURE; + } + + byte[] buf = new byte[header.size]; + + if (!RemoteClient.readFullBuffer(p_client.socket, buf, header.size)) + { + outString.printerr("In call to %s::%s: I/O error in receive %d bytes of data.\n", + this.proto, this.name, header.size); + return command_result.CR_LINK_FAILURE; + } + + switch ((DFHackReplyCode)header.id) + { + case DFHackReplyCode.RPC_REPLY_RESULT: + output = ProtoBuf.Serializer.Deserialize(new MemoryStream(buf)); + if (output == null) + { + outString.printerr("In call to %s::%s: error parsing received result.\n", + this.proto, this.name); + return command_result.CR_LINK_FAILURE; + } + return command_result.CR_OK; + + case DFHackReplyCode.RPC_REPLY_TEXT: + text_data = ProtoBuf.Serializer.Deserialize(new MemoryStream(buf)); + + if (text_data != null) + { + text_decoder.decode(text_data); + } + else + outString.printerr("In call to %s::%s: received invalid text data.\n", + this.proto, this.name); + break; + + default: + break; + } + } + return command_result.CR_OK; + } + + + public string name, proto; + public RemoteClient p_client; + public Int16 id; + } + + public class RemoteFunction : RemoteFunctionBase + where Input : message_type, new() + where Output : message_type, new() + { + public new Input make_in() { return (Input)(base.make_in()); } + public new Input input() { return (Input)(base.input()); } + public new Output make_out() { return (Output)(base.make_out()); } + public new Output output() { return (Output)(base.output()); } + + public RemoteFunction() : base(new Input(), new Output()) { } + + public command_result execute() + { + if (p_client == null) + return command_result.CR_NOT_IMPLEMENTED; + else + return base.execute(default_ostream(), input(), output()); + } + public command_result execute(color_ostream stream) + { + return base.execute(stream, input(), output()); + } + public command_result execute(Input input, Output output) + { + if (p_client == null) + return command_result.CR_NOT_IMPLEMENTED; + else + return base.execute(default_ostream(), input, output); + } + public command_result execute(color_ostream stream, Input input, Output output) + { + return base.execute(stream, input, output); + } + } + + public class RemoteFunction : RemoteFunctionBase + where Input : message_type, new() + { + public new Input make_in() { return (Input)(base.make_in()); } + public new Input input() { return (Input)(base.input()); } + + public RemoteFunction() : base(new Input(), new EmptyMessage()) { } + + public command_result execute() + { + if (p_client == null) + return command_result.CR_NOT_IMPLEMENTED; + else + return base.execute(default_ostream(), input(), (EmptyMessage)output()); + } + public command_result execute(color_ostream stream) + { + return base.execute(stream, input(), (EmptyMessage)output()); + } + public command_result execute(Input input) + { + if (p_client == null) + return command_result.CR_NOT_IMPLEMENTED; + else + return base.execute(default_ostream(), input, (EmptyMessage)output()); + } + public command_result execute(color_ostream stream, Input input) + { + return base.execute(stream, input, (EmptyMessage)output()); + } + }; + + public class RemoteClient + { + public static bool readFullBuffer(Socket socket, byte[] buf, int size) + { + if (!socket.Connected) + return false; + + if (size == 0) + return true; + + int cnt = socket.Receive(buf, size, SocketFlags.None); + if (cnt <= 0) return false; + + return true; + } + + public bool bind(color_ostream outStream, RemoteFunctionBase function, + string name, string proto) + { + if (!active || socket == null) + return false; + + bind_call.reset(); + + { + var input = bind_call.input(); + + input.method = name; + if (proto.Length == 0) + input.plugin = proto; + input.input_msg = function.p_in_template.GetType().ToString(); + input.output_msg = function.p_out_template.GetType().ToString(); + } + + if (bind_call.execute(outStream) != command_result.CR_OK) + return false; + + function.id = (Int16)bind_call.output().assigned_id; + + return true; + } + + public RemoteClient(color_ostream default_output = null) + { + p_default_output = default_output; + active = false; + socket = null; + suspend_ready = false; + + if (p_default_output == null) + { + delete_output = true; + p_default_output = new color_ostream(); + } + else + delete_output = false; + } + ~RemoteClient() + { + disconnect(); + socket = null; + + if (delete_output) + p_default_output = null; + } + + public static int GetDefaultPort() + { + string port = System.Environment.GetEnvironmentVariable("DFHACK_PORT"); + if (port == null) port = "0"; + + int portval = Int32.Parse(port); + if (portval <= 0) + return 5000; + else + return portval; + } + + public color_ostream default_output() + { + return p_default_output; + } + + private static Socket ConnectSocket(string server, int port) + { + Socket s = null; + IPHostEntry hostEntry = null; + + // Get host related information. + hostEntry = Dns.GetHostEntry(server); + + // Loop through the AddressList to obtain the supported AddressFamily. This is to avoid + // an exception that occurs when the host IP Address is not compatible with the address family + // (typical in the IPv6 case). + foreach (IPAddress address in hostEntry.AddressList) + { + IPEndPoint ipe = new IPEndPoint(address, port); + Socket tempSocket = + new Socket(ipe.AddressFamily, SocketType.Stream, ProtocolType.Tcp); + + tempSocket.Connect(ipe); + + if (tempSocket.Connected) + { + s = tempSocket; + break; + } + else + { + continue; + } + } + return s; + } + + static bool partialArrayCompare(byte[] A, byte[] B) //compares the intersection of the two arrays, ignoring the rest. + { + int size = A.Length; + if (size > B.Length) size = B.Length; + for (int i = 0; i < size; i++) + { + if (A[i] != B[i]) + return false; + } + return true; + } + + public bool connect(int port = -1) + { + Debug.Assert(!active); + + if (port <= 0) + port = GetDefaultPort(); + + socket = ConnectSocket("localhost", port); + if (socket == null) + { + default_output().printerr("Could not connect to localhost: %d\n", port); + return false; + } + + active = true; + + List headerList = new List(); + + headerList.AddRange(Encoding.ASCII.GetBytes(RPCHandshakeHeader.REQUEST_MAGIC)); + headerList.AddRange(BitConverter.GetBytes((Int32)1)); + + byte[] header = headerList.ToArray(); + + if (socket.Send(header) != header.Length) + { + default_output().printerr("Could not send handshake header.\n"); + socket.Close(); + socket = null; + return active = false; + } + + if (!readFullBuffer(socket, header, header.Length)) + { + default_output().printerr("Could not read handshake header.\n"); + socket.Close(); + socket = null; + return active = false; + } + + if (!partialArrayCompare(header, Encoding.ASCII.GetBytes(RPCHandshakeHeader.RESPONSE_MAGIC)) || + BitConverter.ToInt32(header, Encoding.ASCII.GetBytes(RPCHandshakeHeader.RESPONSE_MAGIC).Length) != 1) + { + default_output().printerr("Invalid handshake response: %s.\n", System.Text.Encoding.Default.GetString(header)); + socket.Close(); + socket = null; + return active = false; + } + + if (bind_call == null) bind_call = new RemoteFunction(); + bind_call.name = "BindMethod"; + bind_call.p_client = this; + bind_call.id = 0; + + if (runcmd_call == null) runcmd_call = new RemoteFunction(); + runcmd_call.name = "RunCommand"; + runcmd_call.p_client = this; + runcmd_call.id = 1; + + return true; + } + + public void disconnect() + { + if (active && socket != null) + { + RPCMessageHeader header; + header.id = (Int16)DFHackReplyCode.RPC_REQUEST_QUIT; + header.size = 0; + if (socket.Send(header.ConvertToBtyes()) != header.ConvertToBtyes().Length) + default_output().printerr("Could not send the disconnect message.\n"); + socket.Close(); + } + socket = null; + + } + + public command_result run_command(string cmd, List args) + { + return run_command(default_output(), cmd, args); + } + public command_result run_command(color_ostream output, string cmd, List args) + { + if (!active || socket == null) + { + output.printerr("In RunCommand: client connection not valid.\n"); + return command_result.CR_FAILURE; + } + + runcmd_call.reset(); + + runcmd_call.input().command = cmd; + for (int i = 0; i < args.Count; i++) + runcmd_call.input().arguments.Add(args[i]); + + return runcmd_call.execute(output); + } + + // // For executing multiple calls in rapid succession. + // // Best used via RemoteSuspender. + public int suspend_game() + { + if (!active) + return -1; + + if (!suspend_ready) + { + suspend_ready = true; + + suspend_call.bind(this, "CoreSuspend"); + resume_call.bind(this, "CoreResume"); + } + + if (suspend_call.execute(default_output()) == command_result.CR_OK) + return suspend_call.output().value; + else + return -1; + } + public int resume_game() + { + if (!suspend_ready) + return -1; + + if (resume_call.execute(default_output()) == command_result.CR_OK) + return resume_call.output().value; + else + return -1; + } + + //private: + bool active, delete_output; + public Socket socket; + color_ostream p_default_output; + + RemoteFunction bind_call; + RemoteFunction runcmd_call; + + bool suspend_ready; + RemoteFunction suspend_call, resume_call; + } + + class RemoteSuspender + { + RemoteClient client; + public RemoteSuspender(RemoteClient clientIn) + { + client = clientIn; + if (client == null || client.suspend_game() <= 0) client = null; + } + ~RemoteSuspender() + { + if (client != null) client.resume_game(); + } + }; +} diff --git a/clients/unity/simple_sample/Assets/RemoteClient/Tools.cs b/clients/unity/simple_sample/Assets/RemoteClient/Tools.cs new file mode 100644 index 000000000..bc16a1221 --- /dev/null +++ b/clients/unity/simple_sample/Assets/RemoteClient/Tools.cs @@ -0,0 +1,690 @@ +#region Usings +using System; +using System.IO; +using System.Text; +using System.Text.RegularExpressions; +#endregion + +namespace AT.MIN +{ + public static class Tools + { + #region Public Methods + #region IsNumericType + /// + /// Determines whether the specified value is of numeric type. + /// + /// The object to check. + /// + /// true if o is a numeric type; otherwise, false. + /// + public static bool IsNumericType( object o ) + { + return ( o is byte || + o is sbyte || + o is short || + o is ushort || + o is int || + o is uint || + o is long || + o is ulong || + o is float || + o is double || + o is decimal ); + } + #endregion + #region IsPositive + /// + /// Determines whether the specified value is positive. + /// + /// The value. + /// if set to true treats 0 as positive. + /// + /// true if the specified value is positive; otherwise, false. + /// + public static bool IsPositive( object Value, bool ZeroIsPositive ) + { + switch ( Type.GetTypeCode( Value.GetType() ) ) + { + case TypeCode.SByte: + return ( ZeroIsPositive ? (sbyte)Value >= 0 : (sbyte)Value > 0 ); + case TypeCode.Int16: + return ( ZeroIsPositive ? (short)Value >= 0 : (short)Value > 0 ); + case TypeCode.Int32: + return ( ZeroIsPositive ? (int)Value >= 0 : (int)Value > 0 ); + case TypeCode.Int64: + return ( ZeroIsPositive ? (long)Value >= 0 : (long)Value > 0 ); + case TypeCode.Single: + return ( ZeroIsPositive ? (float)Value >= 0 : (float)Value > 0 ); + case TypeCode.Double: + return ( ZeroIsPositive ? (double)Value >= 0 : (double)Value > 0 ); + case TypeCode.Decimal: + return ( ZeroIsPositive ? (decimal)Value >= 0 : (decimal)Value > 0 ); + case TypeCode.Byte: + return ( ZeroIsPositive ? true : (byte)Value > 0 ); + case TypeCode.UInt16: + return ( ZeroIsPositive ? true : (ushort)Value > 0 ); + case TypeCode.UInt32: + return ( ZeroIsPositive ? true : (uint)Value > 0 ); + case TypeCode.UInt64: + return ( ZeroIsPositive ? true : (ulong)Value > 0 ); + case TypeCode.Char: + return ( ZeroIsPositive ? true : (char)Value != '\0' ); + default: + return false; + } + } + #endregion + #region ToUnsigned + /// + /// Converts the specified values boxed type to its correpsonding unsigned + /// type. + /// + /// The value. + /// A boxed numeric object whos type is unsigned. + public static object ToUnsigned( object Value ) + { + switch ( Type.GetTypeCode( Value.GetType() ) ) + { + case TypeCode.SByte: + return (byte)( (sbyte)Value ); + case TypeCode.Int16: + return (ushort)( (short)Value ); + case TypeCode.Int32: + return (uint)( (int)Value ); + case TypeCode.Int64: + return (ulong)( (long)Value ); + + case TypeCode.Byte: + return Value; + case TypeCode.UInt16: + return Value; + case TypeCode.UInt32: + return Value; + case TypeCode.UInt64: + return Value; + + case TypeCode.Single: + return (UInt32)( (float)Value ); + case TypeCode.Double: + return (ulong)( (double)Value ); + case TypeCode.Decimal: + return (ulong)( (decimal)Value ); + + default: + return null; + } + } + #endregion + #region ToInteger + /// + /// Converts the specified values boxed type to its correpsonding integer + /// type. + /// + /// The value. + /// A boxed numeric object whos type is an integer type. + public static object ToInteger( object Value, bool Round ) + { + switch ( Type.GetTypeCode( Value.GetType() ) ) + { + case TypeCode.SByte: + return Value; + case TypeCode.Int16: + return Value; + case TypeCode.Int32: + return Value; + case TypeCode.Int64: + return Value; + + case TypeCode.Byte: + return Value; + case TypeCode.UInt16: + return Value; + case TypeCode.UInt32: + return Value; + case TypeCode.UInt64: + return Value; + + case TypeCode.Single: + return ( Round ? (int)Math.Round( (float)Value ) : (int)( (float)Value ) ); + case TypeCode.Double: + return ( Round ? (long)Math.Round( (double)Value ) : (long)( (double)Value ) ); + case TypeCode.Decimal: + return ( Round ? Math.Round( (decimal)Value ) : (decimal)Value ); + + default: + return null; + } + } + #endregion + #region UnboxToLong + public static long UnboxToLong( object Value, bool Round ) + { + switch ( Type.GetTypeCode( Value.GetType() ) ) + { + case TypeCode.SByte: + return (long)( (sbyte)Value ); + case TypeCode.Int16: + return (long)( (short)Value ); + case TypeCode.Int32: + return (long)( (int)Value ); + case TypeCode.Int64: + return (long)Value; + + case TypeCode.Byte: + return (long)( (byte)Value ); + case TypeCode.UInt16: + return (long)( (ushort)Value ); + case TypeCode.UInt32: + return (long)( (uint)Value ); + case TypeCode.UInt64: + return (long)( (ulong)Value ); + + case TypeCode.Single: + return ( Round ? (long)Math.Round( (float)Value ) : (long)( (float)Value ) ); + case TypeCode.Double: + return ( Round ? (long)Math.Round( (double)Value ) : (long)( (double)Value ) ); + case TypeCode.Decimal: + return ( Round ? (long)Math.Round( (decimal)Value ) : (long)( (decimal)Value ) ); + + default: + return 0; + } + } + #endregion + #region ReplaceMetaChars + /// + /// Replaces the string representations of meta chars with their corresponding + /// character values. + /// + /// The input. + /// A string with all string meta chars are replaced + public static string ReplaceMetaChars( string input ) + { + return Regex.Replace( input, @"(\\)(\d{3}|[^\d])?", new MatchEvaluator( ReplaceMetaCharsMatch ) ); + } + private static string ReplaceMetaCharsMatch( Match m ) + { + // convert octal quotes (like \040) + if ( m.Groups[2].Length == 3 ) + return Convert.ToChar( Convert.ToByte( m.Groups[2].Value, 8 ) ).ToString(); + else + { + // convert all other special meta characters + //TODO: \xhhh hex and possible dec !! + switch ( m.Groups[2].Value ) + { + case "0": // null + return "\0"; + case "a": // alert (beep) + return "\a"; + case "b": // BS + return "\b"; + case "f": // FF + return "\f"; + case "v": // vertical tab + return "\v"; + case "r": // CR + return "\r"; + case "n": // LF + return "\n"; + case "t": // Tab + return "\t"; + default: + // if neither an octal quote nor a special meta character + // so just remove the backslash + return m.Groups[2].Value; + } + } + } + #endregion + #region printf + public static void printf( string Format, params object[] Parameters ) + { + Console.Write( Tools.sprintf( Format, Parameters ) ); + } + #endregion + #region fprintf + public static void fprintf( TextWriter Destination, string Format, params object[] Parameters ) + { + Destination.Write( Tools.sprintf( Format, Parameters ) ); + } + #endregion + #region sprintf + public static string sprintf( string Format, params object[] Parameters ) + { + #region Variables + StringBuilder f = new StringBuilder(); + Regex r = new Regex( @"\%(\d*\$)?([\'\#\-\+ ]*)(\d*)(?:\.(\d+))?([hl])?([dioxXucsfeEgGpn%])" ); + //"%[parameter][flags][width][.precision][length]type" + Match m = null; + string w = String.Empty; + int defaultParamIx = 0; + int paramIx; + object o = null; + + bool flagLeft2Right = false; + bool flagAlternate = false; + bool flagPositiveSign = false; + bool flagPositiveSpace = false; + bool flagZeroPadding = false; + bool flagGroupThousands = false; + + int fieldLength = 0; + int fieldPrecision = 0; + char shortLongIndicator = '\0'; + char formatSpecifier = '\0'; + char paddingCharacter = ' '; + #endregion + + // find all format parameters in format string + f.Append( Format ); + m = r.Match( f.ToString() ); + while ( m.Success ) + { + #region parameter index + paramIx = defaultParamIx; + if ( m.Groups[1] != null && m.Groups[1].Value.Length > 0 ) + { + string val = m.Groups[1].Value.Substring( 0, m.Groups[1].Value.Length - 1 ); + paramIx = Convert.ToInt32( val ) - 1; + }; + #endregion + + #region format flags + // extract format flags + flagAlternate = false; + flagLeft2Right = false; + flagPositiveSign = false; + flagPositiveSpace = false; + flagZeroPadding = false; + flagGroupThousands = false; + if ( m.Groups[2] != null && m.Groups[2].Value.Length > 0 ) + { + string flags = m.Groups[2].Value; + + flagAlternate = ( flags.IndexOf( '#' ) >= 0 ); + flagLeft2Right = ( flags.IndexOf( '-' ) >= 0 ); + flagPositiveSign = ( flags.IndexOf( '+' ) >= 0 ); + flagPositiveSpace = ( flags.IndexOf( ' ' ) >= 0 ); + flagGroupThousands = ( flags.IndexOf( '\'' ) >= 0 ); + + // positive + indicator overrides a + // positive space character + if ( flagPositiveSign && flagPositiveSpace ) + flagPositiveSpace = false; + } + #endregion + + #region field length + // extract field length and + // pading character + paddingCharacter = ' '; + fieldLength = int.MinValue; + if ( m.Groups[3] != null && m.Groups[3].Value.Length > 0 ) + { + fieldLength = Convert.ToInt32( m.Groups[3].Value ); + flagZeroPadding = ( m.Groups[3].Value[0] == '0' ); + } + #endregion + + if ( flagZeroPadding ) + paddingCharacter = '0'; + + // left2right allignment overrides zero padding + if ( flagLeft2Right && flagZeroPadding ) + { + flagZeroPadding = false; + paddingCharacter = ' '; + } + + #region field precision + // extract field precision + fieldPrecision = int.MinValue; + if ( m.Groups[4] != null && m.Groups[4].Value.Length > 0 ) + fieldPrecision = Convert.ToInt32( m.Groups[4].Value ); + #endregion + + #region short / long indicator + // extract short / long indicator + shortLongIndicator = Char.MinValue; + if ( m.Groups[5] != null && m.Groups[5].Value.Length > 0 ) + shortLongIndicator = m.Groups[5].Value[0]; + #endregion + + #region format specifier + // extract format + formatSpecifier = Char.MinValue; + if ( m.Groups[6] != null && m.Groups[6].Value.Length > 0 ) + formatSpecifier = m.Groups[6].Value[0]; + #endregion + + // default precision is 6 digits if none is specified except + if ( fieldPrecision == int.MinValue && + formatSpecifier != 's' && + formatSpecifier != 'c' && + Char.ToUpper( formatSpecifier ) != 'X' && + formatSpecifier != 'o' ) + fieldPrecision = 6; + + #region get next value parameter + // get next value parameter and convert value parameter depending on short / long indicator + if ( Parameters == null || paramIx >= Parameters.Length ) + o = null; + else + { + o = Parameters[paramIx]; + + if ( shortLongIndicator == 'h' ) + { + if ( o is int ) + o = (short)( (int)o ); + else if ( o is long ) + o = (short)( (long)o ); + else if ( o is uint ) + o = (ushort)( (uint)o ); + else if ( o is ulong ) + o = (ushort)( (ulong)o ); + } + else if ( shortLongIndicator == 'l' ) + { + if ( o is short ) + o = (long)( (short)o ); + else if ( o is int ) + o = (long)( (int)o ); + else if ( o is ushort ) + o = (ulong)( (ushort)o ); + else if ( o is uint ) + o = (ulong)( (uint)o ); + } + } + #endregion + + // convert value parameters to a string depending on the formatSpecifier + w = String.Empty; + switch ( formatSpecifier ) + { + #region % - character + case '%': // % character + w = "%"; + break; + #endregion + #region d - integer + case 'd': // integer + w = FormatNumber( ( flagGroupThousands ? "n" : "d" ), flagAlternate, + fieldLength, int.MinValue, flagLeft2Right, + flagPositiveSign, flagPositiveSpace, + paddingCharacter, o ); + defaultParamIx++; + break; + #endregion + #region i - integer + case 'i': // integer + goto case 'd'; + #endregion + #region o - octal integer + case 'o': // octal integer - no leading zero + w = FormatOct( "o", flagAlternate, + fieldLength, int.MinValue, flagLeft2Right, + paddingCharacter, o ); + defaultParamIx++; + break; + #endregion + #region x - hex integer + case 'x': // hex integer - no leading zero + w = FormatHex( "x", flagAlternate, + fieldLength, fieldPrecision, flagLeft2Right, + paddingCharacter, o ); + defaultParamIx++; + break; + #endregion + #region X - hex integer + case 'X': // same as x but with capital hex characters + w = FormatHex( "X", flagAlternate, + fieldLength, fieldPrecision, flagLeft2Right, + paddingCharacter, o ); + defaultParamIx++; + break; + #endregion + #region u - unsigned integer + case 'u': // unsigned integer + w = FormatNumber( ( flagGroupThousands ? "n" : "d" ), flagAlternate, + fieldLength, int.MinValue, flagLeft2Right, + false, false, + paddingCharacter, ToUnsigned( o ) ); + defaultParamIx++; + break; + #endregion + #region c - character + case 'c': // character + if ( IsNumericType( o ) ) + w = Convert.ToChar( o ).ToString(); + else if ( o is char ) + w = ( (char)o ).ToString(); + else if ( o is string && ( (string)o ).Length > 0 ) + w = ( (string)o )[0].ToString(); + defaultParamIx++; + break; + #endregion + #region s - string + case 's': // string + string t = "{0" + ( fieldLength != int.MinValue ? "," + ( flagLeft2Right ? "-" : String.Empty ) + fieldLength.ToString() : String.Empty ) + ":s}"; + w = o.ToString(); + if ( fieldPrecision >= 0 ) + w = w.Substring( 0, fieldPrecision ); + + if ( fieldLength != int.MinValue ) + if ( flagLeft2Right ) + w = w.PadRight( fieldLength, paddingCharacter ); + else + w = w.PadLeft( fieldLength, paddingCharacter ); + defaultParamIx++; + break; + #endregion + #region f - double number + case 'f': // double + w = FormatNumber( ( flagGroupThousands ? "n" : "f" ), flagAlternate, + fieldLength, fieldPrecision, flagLeft2Right, + flagPositiveSign, flagPositiveSpace, + paddingCharacter, o ); + defaultParamIx++; + break; + #endregion + #region e - exponent number + case 'e': // double / exponent + w = FormatNumber( "e", flagAlternate, + fieldLength, fieldPrecision, flagLeft2Right, + flagPositiveSign, flagPositiveSpace, + paddingCharacter, o ); + defaultParamIx++; + break; + #endregion + #region E - exponent number + case 'E': // double / exponent + w = FormatNumber( "E", flagAlternate, + fieldLength, fieldPrecision, flagLeft2Right, + flagPositiveSign, flagPositiveSpace, + paddingCharacter, o ); + defaultParamIx++; + break; + #endregion + #region g - general number + case 'g': // double / exponent + w = FormatNumber( "g", flagAlternate, + fieldLength, fieldPrecision, flagLeft2Right, + flagPositiveSign, flagPositiveSpace, + paddingCharacter, o ); + defaultParamIx++; + break; + #endregion + #region G - general number + case 'G': // double / exponent + w = FormatNumber( "G", flagAlternate, + fieldLength, fieldPrecision, flagLeft2Right, + flagPositiveSign, flagPositiveSpace, + paddingCharacter, o ); + defaultParamIx++; + break; + #endregion + #region p - pointer + case 'p': // pointer + if ( o is IntPtr ) + w = "0x" + ( (IntPtr)o ).ToString( "x" ); + defaultParamIx++; + break; + #endregion + #region n - number of processed chars so far + case 'n': // number of characters so far + w = FormatNumber( "d", flagAlternate, + fieldLength, int.MinValue, flagLeft2Right, + flagPositiveSign, flagPositiveSpace, + paddingCharacter, m.Index ); + break; + #endregion + default: + w = String.Empty; + defaultParamIx++; + break; + } + + // replace format parameter with parameter value + // and start searching for the next format parameter + // AFTER the position of the current inserted value + // to prohibit recursive matches if the value also + // includes a format specifier + f.Remove( m.Index, m.Length ); + f.Insert( m.Index, w ); + m = r.Match( f.ToString(), m.Index + w.Length ); + } + + return f.ToString(); + } + #endregion + #endregion + + #region Private Methods + #region FormatOCT + private static string FormatOct( string NativeFormat, bool Alternate, + int FieldLength, int FieldPrecision, + bool Left2Right, + char Padding, object Value ) + { + string w = String.Empty; + string lengthFormat = "{0" + ( FieldLength != int.MinValue ? + "," + ( Left2Right ? + "-" : + String.Empty ) + FieldLength.ToString() : + String.Empty ) + "}"; + + if ( IsNumericType( Value ) ) + { + w = Convert.ToString( UnboxToLong( Value, true ), 8 ); + + if ( Left2Right || Padding == ' ' ) + { + if ( Alternate && w != "0" ) + w = "0" + w; + w = String.Format( lengthFormat, w ); + } + else + { + if ( FieldLength != int.MinValue ) + w = w.PadLeft( FieldLength - ( Alternate && w != "0" ? 1 : 0 ), Padding ); + if ( Alternate && w != "0" ) + w = "0" + w; + } + } + + return w; + } + #endregion + #region FormatHEX + private static string FormatHex( string NativeFormat, bool Alternate, + int FieldLength, int FieldPrecision, + bool Left2Right, + char Padding, object Value ) + { + string w = String.Empty; + string lengthFormat = "{0" + ( FieldLength != int.MinValue ? + "," + ( Left2Right ? + "-" : + String.Empty ) + FieldLength.ToString() : + String.Empty ) + "}"; + string numberFormat = "{0:" + NativeFormat + ( FieldPrecision != int.MinValue ? + FieldPrecision.ToString() : + String.Empty ) + "}"; + + if ( IsNumericType( Value ) ) + { + w = String.Format( numberFormat, Value ); + + if ( Left2Right || Padding == ' ' ) + { + if ( Alternate ) + w = ( NativeFormat == "x" ? "0x" : "0X" ) + w; + w = String.Format( lengthFormat, w ); + } + else + { + if ( FieldLength != int.MinValue ) + w = w.PadLeft( FieldLength - ( Alternate ? 2 : 0 ), Padding ); + if ( Alternate ) + w = ( NativeFormat == "x" ? "0x" : "0X" ) + w; + } + } + + return w; + } + #endregion + #region FormatNumber + private static string FormatNumber( string NativeFormat, bool Alternate, + int FieldLength, int FieldPrecision, + bool Left2Right, + bool PositiveSign, bool PositiveSpace, + char Padding, object Value ) + { + string w = String.Empty; + string lengthFormat = "{0" + ( FieldLength != int.MinValue ? + "," + ( Left2Right ? + "-" : + String.Empty ) + FieldLength.ToString() : + String.Empty ) + "}"; + string numberFormat = "{0:" + NativeFormat + ( FieldPrecision != int.MinValue ? + FieldPrecision.ToString() : + "0" ) + "}"; + + if ( IsNumericType( Value ) ) + { + w = String.Format( numberFormat, Value ); + + if ( Left2Right || Padding == ' ' ) + { + if ( IsPositive( Value, true ) ) + w = ( PositiveSign ? + "+" : ( PositiveSpace ? " " : String.Empty ) ) + w; + w = String.Format( lengthFormat, w ); + } + else + { + if ( w.StartsWith( "-" ) ) + w = w.Substring( 1 ); + if ( FieldLength != int.MinValue ) + w = w.PadLeft( FieldLength - 1, Padding ); + if ( IsPositive( Value, true ) ) + w = ( PositiveSign ? + "+" : ( PositiveSpace ? + " " : ( FieldLength != int.MinValue ? + Padding.ToString() : String.Empty ) ) ) + w; + else + w = "-" + w; + } + } + + return w; + } + #endregion + #endregion + } +} + + diff --git a/clients/unity/simple_sample/Assets/Start.unity b/clients/unity/simple_sample/Assets/Start.unity new file mode 100644 index 0000000000000000000000000000000000000000..b115f6ec5809ce741f03fbbc96f53b79a31b0850 GIT binary patch literal 12760 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 Y;@tYZZ%fW0vguCu4|MqJ!EYG$AGXQ)`Tzg` literal 0 HcmV?d00001 diff --git a/clients/unity/simple_sample/Assets/TestScript.cs b/clients/unity/simple_sample/Assets/TestScript.cs new file mode 100644 index 000000000..27b7186ee --- /dev/null +++ b/clients/unity/simple_sample/Assets/TestScript.cs @@ -0,0 +1,21 @@ +using DFHack; +using System.Collections.Generic; +using UnityEngine; + +public class TestScript : MonoBehaviour { + RemoteClient remoteClient = new RemoteClient(); + // Use this for initialization + void Start () { + if (!remoteClient.connect()) + Debug.LogError("Could not connect"); + else + { + remoteClient.run_command("ls", new List()); + } + } + + // Update is called once per frame + void Update () { + + } +} diff --git a/clients/unity/simple_sample/Assets/protobuf-net.dll b/clients/unity/simple_sample/Assets/protobuf-net.dll new file mode 100644 index 0000000000000000000000000000000000000000..75584ad26e3d717f292d207a114ab36ff5ef99a4 GIT binary patch literal 187904 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%0D?m`r*Ov!;$O(l__AUSojJILS_8 z)lPXn?=A^$Y^va8U<@=Cx(M-7PN$its_Hb~4mFmhbCN)wR1@&irM^L4;}rbtW+w{I z*_BG|$e3tW_m|nT*ymnUuCgt+N zxtqGrv`66Fv~OMwq-*rSnPiIxk^hDqic-Vu^y{!xw+~50BT#Xo>18h=5z=qKi}Jc} z>fq54ctzn&xHU(O!|(@ujw}c{jP=xzAV1cO`!;px1-<*U)bwdck$3s4|5y7|ciRrk zG-h1<9YvPcMq}QpacJHG>F==a?;LiRo?qqJ?;uPPCKx_vKi)88e(9 zFpxp_&q}r5?Ygeyb#Q#6etML|JTI4*9;@4tmAs45G)IaQ@ZZ3(G{y`sH(kc|5>`&R zw4A2lhvcVkm-o&A{IvOgb%d7jcOLyIj6nq`*PqX*7;czk%Et&yyPAe?RfSaaX;C4vTqwz;`#yeto72)7DW{ zSfSgxCJ7FZ2Q?|pg}TLLu7eW8iH`5$=-ElPDBeJn(*xX$%9}P!bL-W)JWWi%Je_N^ zorK2h=78n0C#MMP75IRPRQkA(POQA#Nx10+@R<=hSU&*R)Mg5~is`oskiLp`-{Wcm zHEYLlalyLRiNvw)hDBz>rcZ7ag(2Nbw+8X=1P-sGD`tDI~YPM`(UnA?##Thu04`C zsd%}nUbA)rGegSVxs?4(>4doaNQyl=tlc#cah&uaKq@jO38iNez|n*D!fTrzu0m=E zeL0)3>{BrA)C0uNlR(u$*q%=(tvU?exXZWA^pVreRCp>d45jbh#{k0#OahS2bWbMh zmw<|VvjCs!L7#UqF8XCRwgN!L2ADLU6c+EpnZO35ir`@3=Mc_TZ7!i)UrlCt(0t3K z`MzPtp!x1#pV7&5Bl_ypTwhIbGMfO|$zza~-$M+oTUnCy@zv?xmpNe0f+Q-l7Tc+` z$=$b`(4PFm(b@@cgi--{Ft__a#43(ZqX=zUqX_OrLNQcDYrjxF-3S#-S0ipqDQ@uN zyb(pyT%?MU5bmo@L40adn#L4exdJ&AR_GS!<`?=Vc;%2*=orvWk*pIg{fiT|!A(aH z5_{&G>|rH<<3f|9u*v%k@B%XY^mo(yqK{%2MMwDUk|sW{IvoZim!$-YFfRFO4_?qI zPbCl*A+%QPT-YKfr)XPTp?$XbB;>+sr8|+DQ>8z8*y4HdXlHPs;@*2;RKq)!?;TA~ zVj{r=vnfr^3u-%1s(KnK9ciw|tKj*mF3k)2axB`6<9%5ag9~InE#m5`iTYkB3uQI0d! zy|NE;v^|CA(j(@$8uOnk`Uf6D8Qt``$TcQPuu((~u8P*Zp;rm6RqZ3SBzj@09BM9@ za=9xni)qEvI=GwsEyA|EjN~aPks7eGpipIVGef;@%W&gf73!gioD(qxTInSyIa zssVc`8kU2pc}eVE@D5kBxmX8-R@XG7Bx2C%5ly4)s5-~2r{)659%g&*I3sV68g;OE zz6R`Lro0Vm`LU|UAe?YKng^QHIQBVeA(5bmdZ81Rv0dcoF<$0k;2q5FM^g!M#0?sG z@`RAAq`Dyz$?ZrjmnLU|Bk~F)DVK$e(rdno>g-?xHwH!Ql zCBm#$h;fCK84!l}ng3sRu;RLj{c^^N5LH(oIc9tL>^(J1vhNIxk}=2M=!p?UvMzfa)a3HRW9h?Y`exJ?VV*Q`AV2%25cHPwan932Qk>)#kVT+g@Q zdp?~=b!|d>7#a{O`Hg_=4Pr1e80vx6l*Zq{j6zdKNnxd+j;J~3$F zK_XzfL8Q`aPTI~6SPY7iB-Wz}$Lij;u#Bc|xI$vr(_bvC0%JkdYibB%LR30&O{G_E zP2I^l2^rj-4VuDTQM0{P!Ej)yC^Bdb5|K+rSqR-OYeiPe^ed*42uZLSpz@7Y%4!A!` z8bS+E;&rgfb_k*f<)!Ha+#duf!fPZ@ss)qWrx(lxHAiTr2BfhKY4~DsAPTZ6kc9CC za|Ysxj6L(tmEy%r*y_-&E$bTyZKuX!*1#;4uhZtMAN zH#_+QWP?YftMI@j@UVB}R=d2(TXi|YfB`Yb&U~MlCCX(m>SVKfdZ+sk&V-;3`4#2f zX5Xdf-a3@OljRqGloyRlkzO}VIn8Yz-=2?QW)~40SM$EfOF0tp9%H=Z4^a%zlT%U7 z=Al$B#ob8(=y|j9OI`GW*OX&tVM=9A0W@bN0;4x`4q&sCATQ1Ps#1woJuJ65nQIUr z*fN;8^*VzwCza(Q+l08}gZIbxR+iUX7l{Do4~M+2SI0Zh3DV7AWx16;-E82hUT~JK zo~XmuH}ncn=fjeBNP(-a9%tU*HgO|btoMM-3yR>n`GvCJ66_RdtuOK2plr@}Yw+DX zY*WJ(ttEJeDNki}aoFFdQuk4CpBm-{^)TkaJ&4YOTTkXi1>}e0>jHc4Mspf&w^poK zl6e|V+Fdx=U=V@JM2*6r>&b&C*6T8^8LYq}+`SO4Uh^I%4{m~)hbw1LK<578OuGi->ga@t7#9E4hFic%Y;ZzZ1!bpi5+M7y^buf_Rg~m^lL$XN85P z_nHsa`8OZrZE!RT^Jq^qH!ntezltB& zW_fGnWVnUlhK*a+y%u!dZva2RehEBvmg7d?IoFETh%Kc~#Y(+zDlo^}aj$^xI7HZo zEtz8+X08RIB(oa|TXQOGY=}u0^$mV!esE1-=-i+YU(-Lh9|V5S&FFj+-w-o_Y^A)J zCyB=|qINQ`*;q^2k0|Ka=TLW@DsCcZ>IF}Yv0+V;ebUOO7Ij=GgEYN}hn{t8jJ3}1 zNad6K65-yFUfu&$;$D^16dsfR&H^pXTcK@DpyqQ|aKRN5DkgAMiQiS|*Sqri+EpU} zKgqs!gk%GAtk4eWw`Y0jhdD$?SFTc+81t6OLmmbi`Ak4W9%6pK4w zr~nYGMbB}Bx%iUO3`6at!QPe}#_FK1t*OyeS-2UxpbX&OsS;()MoDu~)N4H?8hBVk zI=wxLyxW=gsHpG^z4n1oL&oAU5^OzSB!7kg=son>3d?ZOUJ75%VS26WRAbDUA9*7`M0@@L?TNR~WOgcyWX2=q^5hMOWXKcQB$c`4c=B=d zHl!1kocK~ofg8>onhic9ocSJrMDpi|i|2bWW8q=#L?U@JV6gjVxCghSoVANMCt(wS z6DUrYxPB0D3nu3t+}z|IY$z3Mz(N@W;M`V~Z9DjlLRLVaecl82leRZc_d8j(eFEoCMr5UMc;)5hZ!M=_0tk?A zlk;W`Y#0SiH4PXQ#CNd5NNV_g52=>n0l*f1aY`iLsDth{OOx44@R4_&hUS?B_KJK} zwl@*k+7K~lm`_}`N1S*}o>DV}yk^28KbZ+pGC!NJDXN*$!Hy|_!rlVSj){kwTiGU9 z;Bs5+UhS|nuN@FSjQHjZ7ZBC|8j*y&Db?raKw|@SOUOG=7#s4(d3GLtKZjowK+t_O z++T)!WiNNEo#Hka?lIW;N4g#Im}&>-WkEbpWrH*(<#T*NGZDSA9AD*ge6Itxf^sT! zP7Gt;VW+^sy#gVdk~l++LFZWV8kDUWG~G5`Mlf%|xF*3= zF&5JW28-q&LwV;2hiPUwDu6<1#PE5^MJ@OLZiEeC&&yoIHYJ|xPsI!Zl!a65E%Admy)Inl9 zxRz(9hR4Pkd?g}ydg<2r}E=5RZ;0il4lz7;V zI{EWiH&)0TiRZ@y(SK|Na+c`|kXHn3rFc=~}ZE=p8um{t-}DKMev#>{@iK zoBRw;aIyTwNEcF1^Rn)M zSK;%*Bn|zNt~tcZo1~Gao||@4ZBC5F^ zhA7wyPRw*2hZA18iFkVa_-vnKVY-u@&Wh-b# z8zgL2VI$0kNjc}9gu4Gx@PsYoZaHZPntX7qd3UF!)=LjXK;i$jkh`ZrE^Sa^Ri198 z#qKik1~Xnk^AN-fr<1{W29$VEnLdos^q7_Y^r+jO&skvXF)j2F=mQHK1Kn(ueCWQP z2ceTl@JYFo5&{+2S=!zTx0edZKG5;jDiEt==L ztryF+C^7t&a0}KeyNj*mrQc;i*+#=qzOzxjL@ZSgu_q}As1zKYGjneXjzon8i|aC& z>~(?K{v=CJLa%MM+|`5K)X~|JyaU)mC2+bWWK57&{~_}FGs0nF&i0vM)F%p3E9`Lc zRn(;rqcr(EEPDSb?FIw}Ar&i%*0hGB^(C#9DLm3u8Nbdn#Z2&X(ha+)l~tetZ#?WoUN?`=cY}8`JqD%8EK3KzG6;UL=X1 zz+^SoNw7a&w1tnZXD16xr*P@#@RNp6ofj{T_e&on7C8=XUY7OJM-32)U|7(x#2{VM z67$82@r$KAC5FK&tQ997_ZgohdfS&x0bXV!Xj&?cJGo^=@uGMEFlY~85ciL*Ow-@~ z9)Jo3w!ghjR&m5Hq5tc#uD`=J;tbpXgDj_PKw#gPC@TdG9*&o8k*#OE6oo5|mjb)n z-ti}|87!RMV81*tQC60!2*=B|G)HNsd*B%_Lo7VU&RB1})O()s&p-Lz-;-GL{|It8 zxXurYL3Di&A9r*N zVJl-DU!t0zvfjqW^)6h7K01L$*YOM#?&Z*aNM4xZdWWGy5{%qf%h1e0$T=@GQ!E5K zYbN?#Q&}Rio)>15Y$Lfbzzw2kK<}*WZ8^ z15R0L09rxQ0c`hT>AY1iutiV6!UDGf7A!kX#h#=;ZqW=$IrV7_xrJ4+Fr8Ey=&DEUbMSdsh}p+K3P?44&fy%oC-(8xqf2rzref1wSVKu>{cq+4$!^x7-?dVsOy zHW|u@kuYWb2E5V_k(8Id4jGiAU!|{B;#(o(S~7%=x8x@X(-S3NGsCf>SyKN^lnu&wjyQ0rv^WV? zh<9QG#&(W^i-)_8BFFMk2E?Yevi(33f5LZ$ABZi}nL1%mcrkOv>yvtp7l#P0Nhcvs zkwGTrOQ221C20Cxq=vNuyW$J5sQ*vM!+5mq)g0|-a0#?uss*{{QGVHy#EXJO$x>O- zwkIhS$t4sG@+>}MUdJ?Uu+N}f2F}@X_YwZ;g?`xo%YuvzDO(NnRDjzIC?I6n0Z;LD*z9U{U1=9h}%{+mcHG=(x3qCM)X%C$%~WXD3_#Nd||7{e{- zGtp2^;PGOTl&y)(jfffQ&GU14}!)PZFvZJd{1P-;GM97Z7 zJ`p(Rb`l{w7W+gvV&@U)EQ7aCgr1#8p!3cnbniR@oqI*_8!$VK?ijipuzm+$I~m3(N$=0pChlO;dXMR6ndML;d&64vj|{LeTE&9B zkiB_G5R)_326Fko&kvpyszCX0INB52o3-W zBl0Y5<^>coc@8|9OO4CNzDvsxeVFgI4~WS5K~a=%sh32Jn2ysP3PomA>U{#))Hj97 zXOIcZ`3;DvUgcUq1y3w^3iCco9upVZ=t3Wmjs(LvN=R0tGA&?2&^_zWY)6_hvHj4R z;;waSoGdUS>iPCY)InbjME;)0EqAisUD8fnY@nQUtz!gheGUlA98zOY=GPD>d-UaO z3u7lGQ6UEfJS?#&F3%LPK#juciGydhcDeRO-FY5$DAEBRmV9lNPw3Q`zcbP4=@r2U z!RZA3BPmT~>U7P*AtXaS$4H+=6{&p=)@+{*J4xS^)No;P_zo=*KEC7r$mQ5loewnO z{SnzQyUBlXmxU9}wP@qqiRPtj@ni$>c|VQMjHU5elFa3BYA}anm}7{O4s+nwO=3Uq zHSJ_X-6T1JBfirS^`MksXkbJ!HC+P9GFO7tc_qMN>z&WJi6!9IO=2zFX$fBV&Jz4v zO3)T4L3YOLkt}Q0cI9&Ri-UQ@WeGTau>}0O$_v^`gvc;@c@Z4!;Q@0WRnBG*uI%MJdu~f8vSnRBtQ~P3k>m(tp#1NWUQm- zTDyy1eJTk}o6Cy*(k*Q%c%e`BfH(jn%>Tfb{?oxUnP@v{gv%B~&8SoIpM591O^U6RW z^ic-o&!t>*5Hxj&-oE$@B9jUD%!k9*=RGf_9d|B;dtNaPJ z#p<`u_Ld`9&wk3{2RV7?A7Su=U&B=cevqw|o0-Y0v6H6;@PnZ>en^s_CC-$j1wa1e zUxWZ=&>6(U8TdHR#$m7709$2c@=PQKHN43U_;#PgxL{gfUB3o>#6NPwlR!(ovBXVl zY1^S-|1m}j)L%^kGN6x&U5Iqwf=1AqF;d|~%B_TK7@Bz>hA7k_Zbk?sIfhB@p+K#L z_H7w!LNNH;=Hp*#0dgCV03!{TZr~s@CpCPzT%8FwQhc zqzu`~5M)OB_*?&FB#wScik!TXGL5wk4^phFznH9_&2E zZkFe*-_CYo-b~;%Lzg`3sHM#@HWo`3IVXyTWlI_;C^jp8Svi`$(d*Ewyar#44Q;8T zzYtJD3BUrDWc47%710(%DB@7%PS!Lf2fXAn4{joq#ugT0%cL?YdpFY@B$_iPj%IUZ z6nkYUxgfq7=-k`eLP!3cZ3u*3;`(F6ISGdrxY|V}YLn1SkW=zxuo#swcm?t#a8IoA zZ=CE>QM2}J6b#FQ?B>k%FFij%zKA!(;1|59g(dYGTpF^I7X&5)98H?ZKvFy0?mCav z{TOvQaTZ$8s7qPU+g&S8IjXlaUvUw=BRffGE^xPLr!i*JXD2ac(VcUP*2{;E#kp=L zdXlY|yU|Bkr>-e}TViE97gfN-#hPFmJBJ_0L!OT>kCfu+ zWsokSMp^8TSVBrhOeaE`kzu&6k)2;aHNKj+6l$)~32M$19?~=EuOz&1-kj|d@SL*zi{a@q{GB+qV@N`~=ejTtrP%o60WqLb1cb~-J zf*~A17m11?BlBd*vt@n5;S#1OA4)V$(X)jaZyM>jPp(GY`o@cbTWB;B9TJS_kG%ZU zWYGDXVPO-m&aUuI_eP)=M#zQygt{-l=R2fLC)!;MSpT_yh4OE97o%We*FNc6F+Ngw zFy$8DL35$+`ZKudf}&@*fN^P*oFzT2&LkUv5@a&w9Y~q$KQugp3*QWO7DC&7d5tOae3Qs z-! zGm9%%n5=)oMl8v!M;4j4V64LSEw4{u;D~h9QC*laNQf`YGy3|T^|A3{4x~)m*joQubBG}SD(=#nsIZ}+758Ep8#IE`*}!s@7CT=}eZU9WG$`r8KH(zF!UlOThC3 z^ZD0CzfOUyGa~ypiF*tm4WOqI9R4B7#mo( z{W3wJ5Q1Y{}V?iOB^ zk#;KcoEC^Yo0dI*&*HE*q0wM(-?bGt?xe3|;%^=t$4Y^Ij-_jWBFzb2Q4w#T32K}C z1L{*^A$g%9i{c?OeIiM`ZeV~RaktPbs4U_&8OV^KNV=pDwmASY0@0SCP7AaL`h_uV zR_y9VOFx7>dddIB5_?ljr&lz;S*ruh#mAi~3-xm}$a`ql@|ZIkyDaPl(EAX;-ME~$ z0u$|CIUio>0xSXm04Nx`407ID)|_IMJ3yf8r5BuIXsj9or!t>5ZI5YOgZn_Zr?T$- zLdhaD)%kRRX9yDOi9+amiifuO%|Vg6%OcGMjtlY~?Ht1;YMxSftGUbwUfhQ7KLsy1 zl{F_Y)@UhrG-hz9#ZtJ<&Y7rrpc(wwg%SOe;B}diP?`K((g!C*e1L7B2%Y5Pf|s1J znuh|*YmhvF@D_CcMex&O*&sK4P~sQe=0>w*RGXon2I}JR$Uqd)LI;YUGB2lrXZb$s zki3J%&FXrL#q%hLN=QKoQukXZD~YHslBg!N4$Z2v$IKzhMk(brk$`Mtbf zJc9dh5q%%-f12gaG6}l<4@>Us*xer*`rxcTYK9Y=GdOdAMDlgJB+82L?@RC=c_ zXJO{zv*<vL=DSvQS!PU9K3SK= zhsVvtgL_+~Jwifq;9_7=w8i!CiWe9+GRYW8e-Bs7NKGUk#Khu_eh|%XCJd?`?6?fD z!OGAU&h&bk!JQ!;t@VVsCSdRkfGN=;6F+Lc5dU3_2IB|~&O6YM6`XgBe7i3V9}hd_ zniqll+rB8BmJ|2Y9QrjLzYraRP+BTUxH*_pBkBR*=tn!5Q!&{bk%u)h7Zuu7$=lHc z&Erh-Oa(sR&Z`ryl5vt6qN`Kn4>O393*X5P;Hw+cvu#e?Fjst|8$w7CUHIgaXc#TC zR@6}q94IXc$gE{&?zk6_SwquTwjbgvJb~Ady+qb{*V~^Ias7_7IfQM(aV*#-AuY6a zBE+Zc=We-M5v=yR(95AT!}Krk&rv9*}FvS2djU5GX* zLCoBTkShz>(!>iza4lCH|BeJw`<<_H5DoJzDl+Cp&^DAd`W=d`H+*LL8|wE%28 zf8xUna(zO~1z#=4naHBjf4yN~mLvay0R+E*SZHirJbbGKb=>AbxLdUzUM)3#DP6gW zkzNT$kb;x&*_Af6tPCC25p_Cn`p1E}7gm{*uZIQioCfA(N0Ac#m~%3wBOX~mM=wc) z?DiqSLjbm8G4!d5(0<2u;(_Q>II$VXF{D_JZB6iY=>Y&vm|kbh)lMJu^yr4G9@hJ? zYC5P%#z~W%(YN_Cc`Fl|Lt4eicbXFzlcy(sD6rNsf+`7h9Y#iMLkGH>wD27&!g+NF z#uWF{l^{WdI;;Z+f)czKZ^O9nD2`Dsf0OrK1;r8KFfTTm^inO8k!Go5cuOXFqNokA3s2 zXrvO=1SksV4RtkQjI#Gb*p;Bj=(kY(R$~2N4o6BV>(q3M>&J0`Lh5ui!;-p7$g=@C zh{|5%y<~_?vr?%)TKzJL_H=UF9*b)eio^0RadAhB;Fh1_jC1v zKzO$h^}9{IBoLmu1#~+!A2A28=K$TIUX?T}1-c6wd~Ns*5$IRyO+ct0ppbf4eJb(r z$_L^-3W&MSa2~hzhA!970HM_Z#i8N!3-LQ0P!!PDl7nuEC!qnKt#q!$`vV9J#=BDD zJ*^7G?@o#Lv?{T4E%ud>mC7>#+%s}@7isGGwbH(owfreT;B;GRubyy*19m@HZKzmsw&gpN>qnHofi5Eeg^>B-rH`{h~G-Nx8^;3?m0RpYHW((9J z&}r7;0*w=>$AW+$QaK3FLTjCMyg-MG-+Jp5fsPZuGpuz2^@!iu*7*WmEYLaDWddC* zAuq756X;g)yU4oTjUtEp!$Z+7Tdl`kj<_cPg)nFQ-sL!Y_Yh*;4F>uEXJJw3rhLxz zyl`}!n$y!SIss<6m^ES!6thXpJ;mG`=8T?62tT7|u9z#tTrK8#VqPQWEn?m$=CfkH zDdv}A#$rsN3TC@HAa)8kSK;U@$o;F>-(Xq=G>gQn7BdOcQYRI7){LH-!f|S5&mfp1 z)TqM#))4iZ!sB5+3YSLpX5l)_PVb3*cF}ECqdL6kPMFt*mr~7 zuiaO%NufDCqsnP^!faIMmY)$Cp)M`o7;@G1FfBE%f-S#a#YXsEQPCf*v<)sp)GK1X zS;3b4cf~shIVI8Gv(y4Hmy6j2b4JgPDqjIU{8Y>b#C%H3H^lr(%*rZ;84A-r9++f`%rEVSY1>QzYjn(F6}`!A~dd+fX0V6qo1^-1;P@LgU@`}bj@_iNe9_w*kd z8KpMHw?uOF{aIvA&rn74%KS)%%9HCySV+u9IDxvbkfW?*5X~WCj)iHdLk6)8H|@rL zX&cOT7&e6Nm%?mRHw<|MwfpOkrG=K-ZTJ3OJI0sal71a^O+Tr=vTz7a(Ad|-V(u1u zCp1JYtlJLvo5f7vSZ;{g4W^~`PqKFwiurvpd&E3X%&U-srEVVjn?k>p_HFu2;hdi7 zFdH$lI9k^=(Y&*X<$SH_9pKwPn>d14687U~D6?+8k`zPMrEbHFu{6bYJ5kIt#k^e1 zTVVRBJ(#K~YE;jq*n_W#`L>wFE&Qmse9`(q5%?Oz9xGzV=ZpNhe-(Q&HmB#dVKna* z^Ff$1dY&D|y1XZ5(Qw-J7~!~>(ZiAAkAj)Qnd7~~Ct;+NjG&$6vDCjuu*~0z3(MK4 zn%ZdY-^Nxw9ClqhM}5;$0|Ih$8^h}w>DFdQV$ta0TxmxaW5#Z$SuUnkATDAa)JpqD zZKI2IUNd?Iv>#9moNQ-096P|kb`QC5q*&6wn1S0D6kF;*glSX@+gXMcFdH!<{*3S+ zN?gu7;24Sh+>s9!k5D&{+<{nQ_Mm$w%n|CkJv_v^V$>EKZT)7{Py5a2*?mv?j@^^_ z>anSPiC307QhaspI-TF_S&NaP^VQ|d!H{y65VPpZ!>ZB(Q8KBrW>@20xOU0FDzr)M1d zw=dpuEH|o4$1OnHUOUdmULAK%&uZyYo#Q{oai%RC&va_V)M<_odoX34=CtulZN8XC zjpvN2#~t$;p?(SX5$gBiTiVG!(sRNggZ`GSBS%D|j0nGuiO$Y4jLOb^%Pcjhb84CI zzOa*d9oczg*$}m{^O4vP^@Gk!VBaPwbM*NkpOlcgY=7)z`Y*w>)SI1;dpgYj)@)Sn zgcngNrtIeuoA91-X;ftsh;>6J^f&1@s$hK&ov?d(qdG#uoFS%eCE|}xvr*O^^v;B- zNb_eCrXl=&67o?o|0L$?VsaJ33NqnfgyAYSLb(%XK?&HB_&A}FNT+=jTY%AY%S4)Y ziP>0A`>)0Rn3(qtqsud}TWaFWud6I|?o8t6WiUN8Y?4(CZp=)Y9Lt`1UEDh+9qV}N zy_qz-Cf#Ov>hqa2j}?1(7VZ6KeO=|L@w7Q(jbPsSX~;s5_;Pn*iFZ~C3Zb%V=5t4zmVADvy4;wu4luKstv(swNK_m z)I<$Mo-FLL_EggZTCYATJQGm2fxa$07to~wZC2r;i>wY@|7WtBRb|nStTC!#7@_rQ zXi?1COSK4eu^L`<1E9T(-{_+4;H#W(pnU<2Q(qbAl%ii+Uwov(Sz0mb-#up zcNINqO;nExv?20T(NlnSXg}2b&wx(Bp_x+bzjv)EYEzp)$}0ZKI!Ik3&<30v+V;Wf z*I6iR&rnZip+fr*^+pzo+cVYYStw!8Qm?i%&Gl-x;s$%R>Kv(|;l)XNj@l^D1~slY zX3bUG4RlcPFng|Ayaz)v_hI%tRX$2X3ySx!=d0rdTCY|XkFyU|4`-pt_F*a}CrInn z>f!_K#cD5s)~OqcXWL8E!^ZEf;)V87l|)xChX;y}w2x9N4fGhwa zwUYXwP=|j3TA^HCGDf^ezwOrdRB0CazI~k9D+{f))9O-z)~N;k&a+QYYj`mashr&J z5<8=AC2Lpe_d|P?dfPw;75~saQPqv}{jRo8QXozwNx|Il*FvF)oTK6Py+<|&_F{<98EAINc0fA}vU9Gh4d?>(Z-F+bl_ihc z8`ZbQFM}K|RD~0D?kAT#ZC|K18)#k0^Y+E+Rs&s7@~XW_J+O}s=@oCcE>r(9(AJW- z?ak_pN!stHfG$_NP4+{6U~f@X`})wQ_K(!n`)TMtT(5?U-)q)i0NtQQ z3-qu>zZ=zl0&P}z#ZPr^Qu7UDm7ebWL@mog=Q}s6Qw>yJdb#s+bw(Dt#<^WxVW0t} z+nu}AOwq5%KCll{6Sr1 zAPY|qKdZJ2bO!1kvz}M?9mq5{srJ%Z_j#ob@u6n-uWFKkCL`V(>Q#aC8uyNRTcFMA zgwnm;chrXlT2s2O`wyjNGL_Bh+|sG;y9!gGfo8b>RIY)3SUSUfUlkhYrqVg?2dX#= zEp$IpC0S^h`!7{)pgT&JyPv9M2D+#81oty_f`J|?UE_YGP8DdA`a|hD_iJ^AfnEjl zt-3JlcP==7HyY@}(#@`G-73&#^-$@Ru4nziK#{VW+_1&lGHj*tvY)vTtJ^?B%5Jct z)|m!s0~E6^GSKLER+yJ%)Oyt6_n|RX zr9iJ)(<)-tSgS#xzem4cu_iRu8mS>`eZ`~jTPe^6snJ+#qk%51csjI~^>YLLxWcx^ zS@#IU9R3^{XFa9;)E&s7)B4ark5#-J>a>bbNChUE!12rV&+|OEQAeM7~>sSq`cTtup)+yO|gn9&G zsoxJxv98t-Qu#DA)p8-7$8q#+#W$g8)=GiasmeseJJ5RE_@xr%-oe&K0&R$#pJ?=E zSYH_E>co-u46E!grm`V&2mB7PY7O)_{0_19Fwm>;n`!NBpikg8)0%4_ud>mbWi2vL zZRL^nEbCMQ4X=FEn(ens(fO65yxG<@;`fM}R5bdB?5b{+6?SS7L>mLSs3x0E~e+#ruK?RsM*K!Y++NwnLB5$5m zl7)`(7Fh2Iv`)2DzaKixn!ZT4%RbeQT8CT93^Yribp~2ieTsLub%j9dA{p`9uKm>M z)obDRY8JZ4TVn0Cm}#z87gkU4jw!Fpos?h8HE0ivSw&VJy5;HJK9>6g|79E zvDOQ;PW`_6C*E@FrvhzKf2qFPJJxzwAmYofy_MFKCCuSW^=5SpkHV}HXoIZwX={x@ z>m%n^KINsY&kghq>X5dYmogsOtcZSx9!2P46|MOrpkoBuq$+Cu>K$)AFVK3Gs)<<{ zYuWd7$O$!n_cGQ?23i8a#nY_M1=^&Jt?3s&-MZ;GhTNpOYX*eRv~D_H$GfbiDSVcd zI6*@<)Qka#u6=^=f17f!;^bjXYsJClKe> zg2qa0 zYh;JD&_K2QM@F8po)Tz7WJv!7|&>jv5%e$QGT8fX#xp0&OeXno{l z_&sMudL+Nd>F|5bDidg(y1)N~$RDkN270vrzL7s!%LLk_p6Wk6@)zp~f!3=Rk;)6! zOB#y&z5krZ3)UMZ(*p}biCKC`2wA(NZr3~Efwgu){7-~MBcED5on!C*4-ER zyVd_}=CEFktowcBAJ$9f5?ZGYtouvkLu=^&!`^#XOXxR7GiU4~n z>_=;tVRKWy4g1-8DZu^+``tPoV9mqv^L&@<9OkB^hc}hQ>vRq)Q~HF*$+7?&5uPOL z0_^PYR9PQj3&PvVD-7F^a(;N0yd}WahIf>CS7@6%Qf>_ICJO^>Yk01_i&?#RIAvFO zA9*wow>P|>{3*bm3?Cq;TPdapfSM%_Sht1%v?x_+6)>|zm@oF8$Hq!=L%IIB}fM=UVx zX=i%MgoyG0+mSLoqEb#VR@SHbBC2KdW=eOhxH0vdh#Hw|*nO$h5q0urW*fx8)Fly% z--A4F)?; z)-r=%(yoj+U;f7Ipfx4!`iPa%zKLwE4qK9TTf{2a->|E}E|TYJChkqUJK|!wjM-D_ ziL~7jtK~&tVJOR?w7*AODl=~;D|%m>YV`Z)E%uMf8*UGNUKIPrvTDiu=(LQpm zyh_LMK60(Ro*9k5cOurx&x~e5`iY3E%-^SEY9bn{L?l^uA4RkY$GLO&sN`BKD65`8W`?_YR=tHYi_+-FF zXnMEIV75vu&A6cHJ@Qg!_2SZuubu7kQ4@Dl#wAU6$V=~HD`IcPl}&fbkGB!47YC8< zKKYqprLcLw{FNE4l-D=iBfq~}=l3>h^q~CRuw$svgEIUc9rqu^JtSidYmr&(J|z1x ztLL57URk8$M90hsYp-0$?0}$AyjLz^whANs)}{~3wC!Z`Y0SwJA|91_hS8XQLf*h^ zmFSbXt?85U0JGJCR?!3US7!AhA2}S5#XGoUVp`^Mu-VMki;B$qnjVlJ2jU)SdQe90 z^faGp`i!i-msq{HDD(NIhvlC8HQSi^anqOO_YY{cEAxk@|CD)u*KA*AbmV)o{87!` z&ukz0iQH?L%F2yADt~&M;?|4SSpy@F$r1aA(JDIC{Z`I5taWm6EPm<>9u;0LblKq*j!rrDb@@KjIDT<@L_wvYJW&P8vDPr6Eq@}K5wo3G9e@UcN zlMhmyzMHYtEM|JPu~j)Unl-jtwpz~YQ;SY~j=Cx&&Q&*u#5GZSbR6%!!_=dO(TONb z9SEemEiz2K!|aIle)}7o2vv26%ZdDUMK)EtG!wbmUpuj?;2Dk!yEl8J+d_>q>`=Cp zEz~r_-bY-Vnq%1Sh>KGT3~Q4!(ru|~4C|01WlOcfu-=G^R~H$UkGOcX&ajDyOHkJu zwh(a%>L$Z3&XHE4y2G$dIq@=4-D}t*IR_(?)I)~7kn=p)KFv_S2& zJ-EMvw6avVVJ~+W<7TNC&5++$ky&aKGdeBxa&y#tW^_Ix_5d@z%ga&E2iUKX9aYq` zoCDXdvy#koU+S#lbsYDJ&ML*Q?2g;5&T5EZ-8znRyQooy4e2Ol7gfhhd*TdrU4U)J z=Qcw<(JfHh@<_K?j{v(OGO8KAQvv_z$rgE{uX@DfK%VHQo-*uk$JA#1)N_VKcFI%z z)T@RiF?-vvY-S%B)`!_K!-jWS;q+7A88)R;CT!Zzd4B28>`e7MGpbQuv!N>cd5T*l z{75%a^=GzTEbTP5*+@0^MULZkC{*RlR)?+aG`U%!sx|C}PSe3w8Mdv{A$%_Na>E|% zRP2sc*BSN{;>M_340{Q2W7Iu{y^FXawa2h;5Lcw0FwE+F$QrAjF)X@su{&11YFJ0a zjZ<$Mb|&J+sV@whjJWaYTf^od4!^Sb5B7vu-+4~63F{QJ}`{>*+jME71CTU zZt7g#Y@*s@*pAM1%_gfanQajJJD=BVihApH_LBH#XDMf^qs&%^(LF^I5ED)IL&4>zk+-y8PN zE}6~FRa4&z=1{FlnCbbtTKSnBvEt5nw^_BSG;HP>H#oIwF*9A3I<<%jqhuMQXEQ1G>h`MQV>>WnB+hi`8R>t>{|pE>?#OqjTyK^|E1fPFr)9~*XO*B`*XGVCyHE>k}k_8x35Q(^yNPlSDkxaBH_+3K+LZW1iXuwLEpM~SMf zVWYYovR0^$hRy0$?5HIkX`6X&bRh8;?-YI=cMp*491t5+A9 zbW38SRj)2L>?7n}uQqEYzC!LR)m9Tny>6x2ZWwuYrFuX!wz*0@)_^@7U{bD9F9w(u zb&-0L8Jz>dqE@R9195m#sJ;j=DKAx#Z*va`Yu$aMyGF%nhIFw}YgE?&ONv^n&NG^M z-KDioU2Iq((ydeL3@h)Rr`D;>hS6-ZPHi=eW}9_t2eVJDU$JUmp&kve)Tk@fuUZqi z$IGjf`wq7zSXR_})t;H|gB#QthLM*xs6K{Ke%Gix!zjONRDoes>TA_FW~;=O?(yg zn!!s+QGZhhOdPf5&FXo>XsxndBa}naaGja zD((oytrnm3*cf$>`d+gznJcY()UV7|iRQUkhzt8jYsTl^5Vb?a7?zfM6Id(5I_7Qx zYiC$)?j2yA3>yHOJ5<`oWM#b=k$X4d@&fGMsGX{e*=kXkyC>>i_1Y(-SuZB#?gh&| zs@am<$D?+s3k}?fJ9I|>1Y5os2!mwVw zMm2v~)f)C}&+*M)RhNISbAPGF?B;K(vVRlXAcpsv-~3-H`v=Vmd!5_-U3C|;^YYxxLmjKcc>1wo$C^byf2ZRs2sBw@O^yD?j36m7!VK z9ldUD{)y^j;v&;-2kU3p{k<}qeX1ri+bEvvwX^wWY7Mj1;-9_p)aPom(R{yGy!>1} zY}nVmBCIdemnNOn`@!a4sIs3acfA&WrB*Q8DDry$v-wx*C&LQCj;o=+kmd%&z2E#h z74;uty3{|ZWX-tLKdTJGXfF6!bz-(rRQCR|`Om8VuiDCmV85y<%r=UvdjHt`4^O-hqaAzT@0#uC9T(liE@QS)bnclP9d1`Ks~0cz&TQ7y{>ZRny(6qh z`?yKhxo1{1*dJtNqiEZ+TXb{#S7z(M&Ww(+-?1#j(SFGn6=zSC%))3UO0Y|q9kJ-{ zDZ!?{5u?_mPj4jHS2None(OCVI>Fw|3{PqL#6>6CKQLP@TK2)Y%1%<0Zk1@wtQWJ@ zJdRq~1DMfg?~0;Z*;UNei!=I6if(OxV&Vq(nHk;2{wBamqf_i(jb?tI`O&HN5}R_^ zD5mzQicYs9@u_cOKE$=N=NoozpC!?mwrHZ`Rv?G=_B6vT?Q>ytj$LZlhCY`@ceKk5 zySdL*(Vgu&!?yLgKKcy%d}iy#o<6rkceA&exI?IWE`DuR=kQ9OyP|v9R~hzRpIy;? z>~{>?pSw4@pM4fSJ4!w4%iMj@{p}UZHi|F$JQIDEeYs&Xdc71q(EiD=@V;@;gX|Ri zRRsC-_tfhnhS;5$;dwDe$58uBW*bFf-?yTN*;AP5UOwC|GwJA_Xt=$QncnLUw^uS- zjdow*47V>cY;SsIv*Gp@X4=XKdoQyMxM}+^dW8Li(VW=#E3iX`&FcFd*!#>jhWY#c z5?x^b8el4Bq}>63t)P2dgf+_U%WR{#zHhsjQT9~B)~9BJEi=sO-8H7r-fY;8lzuT| z?1v4To-#P5$bQYRTlD;L&{?@3+z1sb~vWOK5AIce*cWAw!>m{em(mgiK(+k7*^0P z(OPB~8MZ$4>zHMBiDA=IzKdCIR~xn?<(HWA?0Unj-ZJ(Ad#hm^Qo`}6nzs#`&@V3b zV*5wKdZyiBt+DM`&OPjK*S4{j+0ll**R{;P%!V5RHy~>bqZ^P8vG~Skj-wlpuCZ4H z*bR|=W7jjIPoPxy%Trf-%vsg1zZGO_`c1N~@#30Y(GR=I0J|-eIS)qlP=PpSPrn}O zdb(#q zJ=87sBExP6+hRY!OpleV_CaQp--y_)_KVC8a#?P-U)Sk4huiHp4Wk@xx8K&9T(aBk zqlQt*?zDf9*Vu|YPg|BP6CON@z|-+zAWLjhLT zzb5wYb_M5f#JaS9QS2l33d5d&%}4DuhW!UNAGNPz_NhfSAG7abwo&AswKR60{R}fY zd9RCo(mtWnu|E&kzZ*vWJYYACV=sm0pOvQ$*om51=bhCbaqSJ;cGe{8pxw(bYTIY* zVTO@+pS6n(d+n_GvCrFOhBX~f6Z;Rlnwj?XOZGBmy4SsI*K1~xuV1#WG>m-xs=b++ z?q{#tHycK!e%;=p8MpN7_AbMyEN|FPG1G1Imgij_M{n7$aU7jfuZs=F(OCIcK$FH% zfbob6GAh|S_D3PPzh}}N;4$`r{Z&X=J`BXsi2K<7iQ~uy+pfjmXyA#appyM)_fICKTjgha2s7PcKii|2>2~vgMkMHl_kvSn$9-a6A{jIW*f!v0Z+$9Iv+AyFMb*DQf!p- z6Ehk)KH1!9(l+RqXeW-D_C&OkU>JEK+DX=$JTFB%`G!%yj&+K)CVL{zdDAfRM7(3S zqZ~Gfp#$HHO>{ajs}G}3`y@I24LfHbu|mUEFq>`|wRDoR(6Gxn?m}kd&-Y`KoI@F0 zclKvH=O2cV2irMs7)IW0=e*CXp8HZe=QuO%-FD8US-PAz4*Yj)rc;|uY`wT^V3QUd zodY?<>c!gw7>_SZU!Jf_m!>CnyJ15RyEBse5eVw?j#HiHmTl96x znCTvQmQ!vRmGdm8(lDySSx&WP?D?~tEryZj2ReHVqh3D9Degu&d}>h-8RG0^rhEA? zXP=Ja6)4|1#7wtzzVobM)YAFR3tE%&%Xj`|809y@IjS|erAInH7)C8!=!AC<)^?23 zikTk$W1RMeQH{npxrR|~$2fzSQ8|0G7~_=bIPS^goU05Ye@<{-W2QYn(V5+Y^3&}% z*?EVVuI*IkV`kdB)0|_>j_|BM&H33dn)RnURxVl5o|x&_hLI;`I!!d=+Rk)Z8b-C9 z?PN34BYck2pBd#ouEiW@K~LQdv~K#G3d3kMoavt|NjMl$$ z=Tc_%A})4Ti-ivUxQE-8JW=UvH;h{4T<0^*!pXZe&KHJ}cWa#E%<9FREjq;3I4yf~ zZ7o`FYn?=9y1&#qFPS)6)fPE#nmFoNi=Ep3l#c56NbFMQJZ8FWmpd03M!7F{E-{R9 zU+!F{8Mo$gXRBdUhx44*nCaHMz_HJw9CT~eJ9jeE-d*MFWk$I#XtB!qX#i=~i?9}T zEiQJ_2NKgQeX*0nOtS37C>6i21r*y4I;Ff;A5 z8=WG<$Y(b?(+wk^-RP7D(%sbJM&}V7#~!@NdDAfR;4RKkX4->Woaw_Uzk0DfZ(ED4 zP8@wXE7+dA`&-=UtQ|#6dv}|212Zbwh}e6aEzGnBw>#UIX%B99wi`ws-0s|~HF-7M z?mT7~m1U>%tkz^N?Q)J9MqawlX(<=kBs0@Hz&%c?VYIV)z)3fZ`ruwC+c4^_ z4?7(VqtWrO)7>x{Ie&L@nSB~g9(>H{Z5Vm?F{htlwEKO`8O)4(a*M~D70lL)uk#MJ z*ynt&3q*j=l+KCADxbKf5Z9RFv|T6$12jbrTV?$L>Wf8zvUz|)Af7X>1P<_{;o5F zna=%vr-GTz{e5QMNVi@Ij)cK8>F6U9l85^wo=T59)l>0F!jhU|d zSIz*#DEDui5@tI06HYZVZS#b)jG37J2 z7Oly3|H0X180G$x^8z!S`!CLW%yjO*IG-}px&O!cN~h!8|Kl7tjB@{v^PSe@-2da? z3%de+{x>IznXdaEPO@Q?yXBt2Oy{oLJZ3s~<&I#cbGO|hosM(2-SLJ|?zTHoYjWN1z+D*ho_IUOg_qvvDQ)ap>E!`H(^lTdM#v4Yt z$Gb^79p@hJW*J7gC%U;>lXGw74mON(Pj)9V)48X(bD8ONCB>~UjAp(R_guqhR!nhg znNi6;Xp!Qs)p5M8q`TVG2M++wZCwe8~0F^p>4)vaTuYunvj%}m#}yL*LURNL-zQ;`O;0L&362<9rRi3+u znfAnBce`P;&b!P){N>m&wZ5Hrxxv@{qDzx(cRNIZrF6v z#8Xm~^BgzXFuEsN;0`j3cH0&1B*W0H;(O!uB@cM&tHUtV0bd##D1zO=~QVi@(M zMee=K>ciF!BDPP*@yUCU`?F!xlb5*3GpJ;`zbtcW4Ws_D!u^1muF?7Ku$f#3o;5CT z$1)a8V zagV&t4Vy=r>&4i?>*6-K9p-B*rGw|k-sFy8cEqAycdNVE&o=q4a;v+!Tx%{Fd}G`l z?kx*-9QDZU?rRk~?y|u>)DE{_B{AL0?{!Bpqfcwa%X{5Dg@}S*oCzl)cDbEKYes)J zxXaBojQ&<{mm58XKpcDZSW(Q~d{?rfuZ_kq)pI+pAxeESQ&u%B~r@Eu6Ow50FFYWa^`hTqvHg)MQiq^>FD>kOf^2|!z9 z0_nT%2+u%R;ydjc=HiuB=h%x=k)|aEGM=1DdmywHC#TY}`D|e%`;dMOTjCp%$Z}|S zCC7$hAyP?E%xNi%nl>ZJM4-ZV?@_&G0v)!7@0)?mCin(E`U``ptY69&NK8I1 zTg^IDLS6S$p)QZs$zx58B$r|-TUf=p9PLMTuHZ096uy&*Bsw;z*-&Q_ThMKxZQjOd zwfxi)3*U7_mUZl1Y~eY^Cp(hd9u&j~4r|ojn-fwCs*5yzn_5ST*VxYgCj76HEKoVU z5v0S~haW>zileOm9f!BHBuy>4RANBss=cNGj3^O5|zm$Wz!+Lfc<36eIaB}mOq0I7jOF1yVl8nO>+In09u7YYRN^V1Ee--5@gmS0 z`>!D^@x62;Idxd!+YKp}dXW?#hNLA)!+x$M)F-9b&a=>$tbejZTcfe8Sktplsk|_i zs$uM$K#o%U!j|<6;0&W2b?&j4D=0SD_hR!TBsy(qdqpCZ*Mek6iBO52VNSMo8Rm0K z#Bq+T*n+mK=lpb*P%C>L4sDU)Jl?e?p;xNEK`!xqpTShxg0>c#m+loEIhT{|{J<8v zajdSXo@sTMRx5nRTVNgZN~p_!G7exn4|Jfi9RbpJ3VLCM?`|Z?%0$AE@g$!HRKgFm z#d6^3M^`r<+f) zTG9+*TeJk~*7W3BvvFG6jGD%B`ew?YO`Vo3OJiBLyOxKB$&S~HbZiQjq!VK|#-P5! zH-M6UsN{V}Y(d|R_TS1KV=c6eLaphUf%3Ar-L-v7oW=DT%4G{JzYZ6%oKTNVC5l;c zERF2YEDbqJf?@P|mQc@;rssr)SF)D~CFgF5KR~0_~i=6-}>(dPSqM zxnfO-jxH_jUA;LZ7*_c1Oe$?qqId6Jji@9xzG0Vop!N^d?o_cqLGB8dt^MD0XtmwQ zCH!le5~K1>*bg_Q)v2g#ipyr>+kdHqp}C(r)@@*c>ZLfXSL>hzAHr(n8S;N)Zv_2z za%{uA=5T4rf|plN;^jpWZ*4l+GkVTHwcKe?ub^d1&}qx-CnUGUE$n$c7Iq-4@cp~g zuO4h9_vXyUSm&9L*cVws);t}`#oP1fen^&GSf+VZYm!8=#4DBV)uiv8??}@XuR^nl z_y`y#z6OSipMl*$%2@=`+Y8Fao>!iN1PIGUQ6w4s{ROT9j?dueF-L(8D+ z-UlU=VknnW$ByJMp*JUlrV0(OWIv2!O}%HB#A&ts)Trk!C1yj@7PY6;m*O&(pPU!j z^epJPH?%cr#94eN;LSq1j^8CwD*DDa-D=)WRr`D!%k?dRwofas;xn?%XJ<$3gpMor z1DlBFfnoSwd9p^QW^V-1nc5ad5bJO%FRx>ec-D^KCnP8qzjX_nG}rA1hOtfh7H6_X zHof^ge+cOxgARU$38|W}eNS_7HfjC>`<_InwMGPMO6Ng*^aqlLr+zA@KJ_>3$=c`5 z*@DK#t)Ry#&gs0`(w;~1E)IRZGvzW0=$N&vHQS+mmp6Bjhwx4Jh=TONN zYuY^PI^3GBw;ShC7Fy=N5?+jUm-vQh@+ZySQuw)bDD2IgwA=Ukb|qpR?lUg;nI`xi zZYu2soQlRKzOkF<_LKKfx;*Q-b^d(UMDs)FoIw4A_TIO1F4|6LtLa|xSL%DRPUF%x z?32MWxD-1%_s6*WdY0DvURv*@c#>mvcqZ@Fbzb`JMI*)HTl`s{P5}+`(y=F(@N^Pw zN0;FkRuFyD=X8LoHU;w5j+=D*eeO$51>Eb6mN;QxJGY<#A=%>LwcI_56LCZ z;fnVs+FGbY?+0)KW$)=5V~zR-uTKxkQKPn|W2yY!{^}Ug(*BV4Ho?8Cjtxc0cfU%| z3Eeg~9@-E3_Ctq5cV7)H)9mf-W`kY|T2SV0`6sSRu!Q>V3*W5IH`P=Zoa4CsUg3v7j2+Xr))L(}g5glF zdYX-O{-2T4^99x5ydNypsdA)PoY1>bTc4~M>O*?QvJk7a*HS)^)wb}EbEc3YpTz8I!wOxMrf$V8keDQj#OGVJ$R2D+D4&! z13gFS)}(z1d<*oRF;Sa(&(U<4%0Rz;L~{L1M2FLP1nHdvt+rlI(E6cvPEM=sP}=`p zD!oe&EvLR|3@rmmyzv_>i4t0qB$f%EE>-9=ve0m79Yf0y%;i*mqq;ZDJ=6~;*XVTC z=qZ)wy}zF7bk=k`>L*{+H*ArO_I2tH!g z=UXrL(AL!cS;>7^=SyKre1UqMUjO7e>VB*D1G*%I1F1Eq0&PLw)Av{SB@K9~341S0 zrv1RQ0(!pi(MhBAbiGuUpZw79 z>9*EC*?Xt+hW6)wn<}`&*R}Rq;jj1P(0u>9RFa?GVh@l@ly$mU5eF|NqZM@pP12;&*kt-m6RUC*|RuA3A%7hUs~(_jFa4 zSxd@MPTZ>i^^-^ZLN$+?^B|Gp5}-a!dnYowOaJd%lb&>Yc69FgQwpKp`=7P-=~|X7 zdpq-!Tlod{tsd8(u!mQ&_q;tYt*~oRchoxI|Asp&-5)~B9~us=%PD#e=M~yII{g2q z`u~;>buXe*(Na zs-JL$_SL^`;m=3w$>UUy9X&Sn+4F3!Zwc_PlpoL0PB}|^yIftK&=DHC76f~vw_cFM zdt#_hwRB(M`Cpem)SC88(2ln{=+@V{lPA5_yjNQTI`}0qYPCm!O~fH!7(eF?$1jr6 z(`5Z@IyA4)l2b`e?;rgHnbtUO&rEjU6Q1!-E-mRRu@kX2=Z;^c;+1Dj!fP^KQ}H?*uNipF#A`NQCD19sdnsOX z@tOxd5AXBw^5b<5UJLLl$7>;86?j$RRfShIUbT4DAx$0L7vX&o-WTJ2G2WM`7+~MKq>JJaKO(QPcZ(>Xi1WXGsZ9`0gG`cC3y~GH^#n>Pa*<)Pn0I3XW{8P8>0#<+@c9U=0a0y`T`cveD^x_3;TIw2k#lO|8dXIb+V#(x=| zMbP5C6tB6Vx&KSd(KnVNi!G0=B+B2TP*qd=6<8a2&z)j+T7E|G$IYrke zgj?lBc`8R;Q?w<4yeH)*v8CwVgf((;;ll~t)DDh)qUey7Zat6i3Hct|`HT?1P4))z z{gQ1~w>X+WHot-7JC3!Yq7zTZUpQ8d9qA@n&BvxD_Lc1rUL!MMKix{|)FW||$Qz6A zf)k_1_Cv^IgH&IdolKB%wrtNIFfM;V=?0t#;j;< zxhnC5m_9DTIw2|u<%Jx(nowLZ4*g$lVaZO$YDy&^;P4}iPXRZHXU9=nyv34_7{6lt zk64yX7WvaQq=_Dz{EC&$`pa;+DT)TSlLxAB6ATq$h zB)@vQSXyQLE1zZji=1T`#qqL?f9tc1e}A)#f9tahPjLo_GXAa4GCVn3pvw5SKFj!b zKg$ID)@K?2?q`{xzbYu>U;HfNU;ixQUlc9lPyd$*`n*2%q6p~I?}65Gj9D8}vCPlx8MLyq@ zv`HMt-{tIv4$v3z7MCyvD`2=Nvuu8N`YQsMQsullRLK_WbKLV-FlN)3Txf0OBt^L z=2*8wQriD|^Nv2#bPo`4+D|wA9o$?`vk3#>G*54%OSPQ05T@JVW0kPk<$!)V= zEuAvb&9SN7FGq|25wS_^oU#Mu-%_-<4b}IFHr=d8r)){+Yt!#u4YH_B2jTCOzHc+t z9^1cK>}T(75`Vz*8W}&eXUcw&J~amZ=`xkppeNF*Q+}2sre2g%Vo#rX6~g5R`;p_l zDQo1WsSg70kE6NqwyBS%Bw0`3Tk^=;5vbRLu&_oP0OqJ8Q?E$PQEJ*XseUVI+6}3n z^NQxTvZl>x_OLi}+Eb}(>=DzRNnH=in8R)Mr@aD_Te)_(+VoAJ+w5DWy^y-ierDRM zsrA--)81$N6gIz|mZ$2i-=<0F$8S+3runTdXQ!toyd7Z`sKb-;?IX4|{r2>S<>5*9q_2@ZrazeeGwa`q9{x!BZs39R-Ozj~eH`%Z z^l;#(>Fc3?BK-uyzou^jHfj4aFt)8_AD+~vZ8$Ky?KY(C(U$f$*r$on)5kVDqHgWm zx9wI)t^u}*y{YYXF3ENdZ^d`{-wO$$<=k<`(bnM(m2(a25K8<8B=u^-uqYb!F$wkP z=P?N}(9CSMMy{W}q1}E#Jv@oi?#JJi?QFM)E$m^-dpNIj=aK2h+T}Q}O#cb^_VnL5 z+$$r;`FMK&jQye`zLzuI`D*$MgnyWh@07$hHZIIqBbv>q%NS(SucD#9%~+0bb@a*% zd>aY%8SXi>4&IGatNQH)(kM%Jy3cr`O*-=W9QI$C-ZV4E88{;b_{#KD;HQ%_Gp8c$ zchQ7B5T@^rn`+TF!L7H3&lr=r+ZsCq)~x9>q_y9wo-r+RzjeWko$dDH@6Qfd>oJp@ zlS#Y2y%_~4$t9WN9QyUQzBc_nTnxTFtV??;)ynqN3YRio$+(g6Z;V?R?_s=;@!|Hj zibrSciOR8_p0P5c8*o52jl0d+C0ySyoCJsA6^V067|udPz&KG1OcYar$zmojO_TyN zSSOoxI&ruwhjUrK4@>&9B#*;GIXr@63)$LOF&}n{#X_9ZW{XdOW#TAszW4%IF1`d- ziLarvL_}F(I8C(xzR4wghix9`@b?`4iS7T&_65#OD8EH@iL1eaJJPCScY$(2@~a9hAJ*YEq-O!5xXp^;~tCZxYwdOK5Bgp+-D7T z@jKMkP~bCGKJa;Kgp0P2REuaywTP3{B8igQLQa%?fjPT|<;vKZECCFQb2QZ6eb z<#M5Vd54^K95tBd!ibNv_loy9HGc&p(2}O z71=CSgJEGaYd*@j5Bg!^fTGeqqo_R3bJ~|U?Q5L&O-}m`(mLV;{IxLrZ&O~mHl^)j zQ`-JE)ilqhnhv$e=OgT)Q4wOST^I$=+Y^CX?U$QJiQ{%+Oqlo{X&sU5P&v~aDrbiC zC0TGtUdZyXEH8%K5mOv0|8$4SFx#OrEOEETp{Kc2k_%lb$we-ea=A<8xyq&f zbB#M+v=`4cABi*n+hSP9E*KRBIbFo7qCdi`IQ*RGf$-U)1LO-t5wJ!i0+)*t-~w=+nRAuJ!ll2U^tU!_)sk7@N3 zV>_F|Ll{>vK4p{5RSwBjSZn!2+jhWD+m-@FyH&vU?QR2(Y4;RMJ__S9gp+(*vyYn9 zwX>s!V8jh+z9DR+C}sRSdPwtinX_Bm6IPjYA>%E;Wl8%u`~jngqu8<(O8YS$9FG*U zH?3_lQe4QmkMRS>v>QmC$9N&*EsP&9iW@nWaW-QZ?y|}{*0j91<&`b(Xt}fHGcDh5 z`CH4l_}=lu;ckdV+hVQ#{?39A#Z~#rnH*Ts;t$LR_C``)oM+v4Xrk}+R|!&t9M#`-YT>8u-02z-`)D5)*rV1 zs&!;?*W_Nw1CysDS0~pe-;%r|c~A0V$(s7kv(wh4-IMlanoRGV{+cy5ePVi9dR6+x=~t$2P9M^CRNL`w=d~?wdqLZa+dkBG zQ@fkm-PZ2Gc8|6@)b90m|7!PHyYJdL8Ic*W8A%!G8JQWKGlpaoW=zQ_&A2qsj_0SQnJp>8l5#M zYetqot17E5>!Pe{vu@AYm-TMe7g@h$srC`=Gu!93AJ~3m`z7u7wSTewSM7gl?_|ei zCuO(G?vULhJ3o7L_T=mt*>khYv+J@i$i6)Lw(PsI_h-MB{dIO^PK%uOxT))e`$Qq; zq#XsmoAst>4p}V5aVy+rw#JjvWc)2m8~hDS3huJfv5K`7F`}JFz>1Y9vN2k7a6{Ko zbcLNB!2Y5;?zehkCF#vKa|Pl|F-n{zri(l=Lktr0#8BZ!>^X?75F@Y_6^Nziy%$33 zA~8l>f}6riafi1SKPr3$#`JnIQCux1;Wxh~i|fS{aU<5cTf{VR8|HyKV09a;-iLMc z0WnML#k%*1C=ri~IbuKNj|0Ld4vD$qS>*Zx*1?yM^Q*}DpO`(~!ix9~*2?!$iVsDl z_ylX?QE{#~CaSSU)`%0LR(vn&#E)W;_(d!hzvJ!>ze6BwONf>+2}+38F>QdEG3mgr zF;c9%7~gMmE##kaSl8n6md){5rUlDsfOSUmS$vUrcShwB& zNJ^zG^z2S0U)G%@=X3b-?o@JJHm#$>T1S^Hw6waMC%RJ^bZMO)1EPe`mbFiwZ}LQQ zJi+KqI>~LHM!02f%2D_Bl-|!lqETxa9UcqGZOLO-#6;qmKwaNh;Pu_IVug6DAC>dj zeq{4)MlE^mOp-M1Pxx0PBL+o9vxo|Bs>3M)Yh8h z1*TV9T0Xh7rz>Ho{r^p>(A-Zh+v#!-P4)inf5-VYEX#ND0;%7Xuval}pMfeY_@Yq3EX8|p1AP{#@h;3pG zLD*%C!nqB94`mGpMq34lZEuZ2I16Zr9BVYf*^Iq#s)LuTalirA1jG(x9E9h15@$!k z!FZNui6KCV6XaCjNb79i6?m>E#d>QN@LH<`IvW}Bi^-5&2eiay%ZKodKug?$=X_G! z479`+JnO?>4*@N)70>(dcOpPb+=25e{-%KOPOB2(?RYAO&tO|Mh<$+ZAw2t&;z6J# z{(wT#wi$as$FH&=TSDT7<(Gqvdr7 z)9oKVbuVuOwvc}V#>tz3E#V~)HZk`6#Ay2}TEJ>^4?^a4uJUp|cRaQO(r`9Mn) z$j1;K!8lSr0m&$!6oqm>!lQvwjFC?vTm+OjyFZQaIG_~c80+QdkX#7F_oB#S2(M(kNPY#$ z#f+E8Zy;aIxJI5p_%it&aIO3|aGm@SnpXfN?jC*yZj}E4?v%d)56M4(uSpBD(d$wH zKavjc3)#f7M3@RkxCvu~YKm}E)eQ1TpcGwHbA-$-u2@D)4r7HtB}efOo4>;2z}zKA`3SA5?zeqiO;0 zF|`o*xT*vmQ0D@lRyDwbst)*qS`2(iEd{=;mIL2Z=Kx|x)^v= zT>?C=)&NhawZL!HI^eJBO5ks5J@9w60ocU878qt<2Mo720bANP0^{w!0Tb+-fob-w zz;ydIU|aikV2*t!u!Fq~*wMZR*xlX%>|x&v%(Zs|``Pyc&$J%^_O~Ab4z(W!4znKt z=G%_}N83*T$JqOUMfOv`N%qsg$@U@O6#Fo67VbpQ*7gg)68j&(dG^adzx^uk9Q$=( zmHh_rT>C9xwf#15sr@c+nf*R+xqSp!Z+`?_X@3G-Wq$@-XMYa7(mn>f%Ki$t+5QIj zH~R$eCi^?!-S)qM+wC8LJM5o4v%2HT?w^+Ct!>s$g$VkLBDii;qhE$(2vsYyA)w?JpM z*aDr|Vk>lJi_J~WaZAL(COd(9n%o6^vdJC5`TQz|}&eyR8nX-ma%Seq-N z!zzHWVO7Ayuxenduv&MX=*O5AwjJTNVLO2tVRrzt!tMfQhusZK3EK+nk5u!;NXDVC zGhYmb&H17b7W`s5}AYULBLB2pNfqa3u z5b_0LCFJGeGRVut<&c+)t06BJ*Fe5dY(;pXxC!!wVl#9WiaQ{$5D!9LA$CDtA$CGu zA@)LEDfS^;DV~J9Qal5lO7Se@RpK4S*C4MF|AM?qyaLT?@higB;s?m9#rG`v9h$Ww zCA&UY=`D@u`@g! zl3mbTF7AWoapiuqL)}5|4QP&5|1RdNXks=oHQ_LSkm$~wP{PzE^m8h z+xOeq7t$x|=--7BmptN$xOYc+5*A~feZ2{Vw3a73(D!87d#q<;_aBWNeGFc$ai7)( zb4dzbsd%N~m5Et{W|?g4%5(7QfLBMnI%B5kg4Y>%(Y;zXyt?Dn1Fu}X`d|;TFkocDTTgvV7g_KqD_O!R;%=B#cg~Tj(P-YjrXW-Qfug9U6hxdHE;&Bd3 zz$;O_ixb+rXzAC{-mjC(h3G%JvaGJ$H$YTXSJqa}shium!dKg+th`(l`xp8qRFzar zC@m@XiLn$txNfc(Tv|TDS6=0-t`TE=wMBEz@s-vVRn__{D{4f+uqCy=iW-CkROkAt z8}qT1mF32iZ*FC^Z-TGdUsCR0Rzm3q)z((~=hW4j%m&S^^;Q3w!eBNr)K~L=GxFyu zUKYOUKqb2jsa#m)FZU$D^pFgxEb|qX%<+{Yq?LwLR@C~I)QX8U{)%~n%PUJ4h=RgN za1i;SuoCVQLrZE)@++$smedA(GzU&K?r9jDSnDqro{QP-#Y?Mvl&vUOSXJ&X_1EV6 zedT2}BH*ymB~`()kM`A;i1EI;k{W+$p}(e9jDfvj6?F@J)g`r+)l5af z*lJ&yzqAA`Fuc05u1buqt1Us{IKhyT^71()r3)tbP=}z;P{1WigP8{-Y6KO8iq4KI zsfOH$>z6^13L9K6L4L}#{bP=<=39m$)hxRT~iScz6wdlG*+Y`_% z<-S@phF79|e?=KI*&C$Sn2TUF#+LZ0&2>wA{d`bqsjsHSKgVD0uU#r8pxai=Gd9rP z3%Em|Pm~Q?R}V==5PhL9Na~MsT#?=B$GwKeq3+Ett zUEvc@>5I$vGK}BhKU0LH4y5K=GntLASnZWZi_kNQ@<76B+-d92m$>GV> zero;(hP4`o<9bdAomfy& z+pSlKV95NEz+@FjPbNckbT=vs5e>$K=))XqrZA-BjEDM4E4lxpi~7W%>gtlE0g)KI zv^Lc0n7Z=vU?jX%2>-Uuf6Hi!LgW=hzUd44) z4f2~76(Ptggv^4BqKqu+z>%yKD4r~p=0&T5|V-^=3s3a=YY1w!dV;AmU`|8 zv4H7-CcqF$aml=(#YUbt+QpR%d=+A{znW(~v9Jccr`$hB=++YCbD>x2;1rC>y}TBa zJ#~$8ANg2tTTl+7V5q;QsTt4_$YdhipButMt{@Rac0D z8q@KIVB##U3?cc|l?x5^*G#CzBvooMrsa-z!zc?IM%%-AL(N{h%#;%QbK0L`Y!+9V z4QCk*RDX@x*;G_kjKu;3yHrv1Uc>wqRdsqD<%ohHEvc!&F0p(m59xwJo`HG0j}t~w z6(1?ID=SONv?FnPDJkdeYDsxWS*dc|hNfLjixwgsjWu7jDdGf-6`!_*8uHm^vcGn| zmQYr_<)$Pez&NQlu!83n+N{H21r>8E$y+)D<0?w4lTnDe4>s5(WwaB50YMF|+m)3_ zJY>GFbb+s|xCAw)>>JD24h{5>LC;w)sHj|AQCwYzZBN-C?M^>d1r|@lM!Io?(OD|6 z_WPOB=3<RMXtxQ>I$%Bpep5QD2r zDoSx1$ZrL6^N|sTs$nQ^knl2ydQ~me&EP2w$NWVbW{($=S*-h|CDo=gV0XbM1uW2WQzg#y}#CA1P$FQtKkqZ)wE#{w1LikJyy2$zC)xVnC{ z*VP4u8EnNd%6J<^R*6zq)B5{a1an=>THbHf zOrTZQ?1{xR|Ga4>^F;CDN@(NE?^}p-B-Z35zA~PYF&@m-L1l%RbI|4W&5PkD&G6`g zw7N7-rxz?;lw$n`EyJsq2EtyTh6W=WDf8)Wf_n&F{{E~QaeR6T5A6;9DZeRJyO@p$FPVjNL@LCUc-wyI$e<3aE}3%jzQ1|x-bCQGSk z1z58&GH^WRsUH$O7aLwsgHByqj)}2oE~X%4Os&F|q5w~cNHdY{2g;YC+}vmdHC!zd z=Iu0;@P9}yp+pY=y>oz82<4o-5ia8^1aJCKBlKa%v>qGKgA|85 zf#G7-9)xsxX{e)=+_3{^doHaW;d%s=RL_G>!}ww?ED7BHRbY;QAWbACeq3lmpThom zb(M8Bd?$v(4;4b^jUy5^#JE_hpxe1qoO!&GAh#~q@u2P+sWL-wwxwY`x^j_k3=I@d z05x4xnxRCw-ZN4PGi8qVEku$+OsTZC(j6VnZf4_YR0?WFm(YxzkDUju>rmnvg+QwJW439NX2 zbzMM+XLc8c#Xo2;?n5fvCFLO1|9*7||Dfbfd(# zkyNnaNZAA)O2ZlSKOshHRs@%!1Dyj>AEXG%=KZ=n3-*PeCVsilj6w8DeA** z89eEE)vVEXuNc!b!Q0NTIm0+wPMMAzXpJQa;7sqsccKmZH1 zytYu88pejMComd}9FFA**SHILbn>npCsH40!Hnv`fw{QAt;ALfsq;+`GYj2a8YdN0 z%)yFV%g#hk!R}_R=_574D=;cqK@DH;Bj-Tf5I%(uF~gMO=8A9a2K(lhEb`-?gyx-- zrL*8bz1^+BOo_)wHKll@pyyJ$dN$Ypro`OALOUkUJJ|7hei3l5Niv3R$ms%t_cuBZ zvOF~SfCWr-nv`6KH?D$4E0n`MIMDwVDy@ACZC#8mx z(uVQgy(Tqa;F6OH5gD-Aonri5=(L7Ygn|5kx+M)V25Rk?xrUueGg_yLxX^m98 zuy@kePjCWH;V{Y<`SHYshG}IvPS!Y0%`Gp%V-@Nc2=FkVca(X2Wu@-*1vPl|QB{IR zT3mj16g{(C%==3&aLu5={Ki{NJ@)?MJQkdL=s}X66;3y0onkmOm@+_u?Gl(-c%+;0 z*|0Y?@ck(q>^am_x*(*Y<~EccNx~=}@Jv;(J)g2L^dddz9ym5|y^Nh+pzed}mf#^+ zNi}by(G2==F80yb5d;|a_BCD%ZCUgtML(Ddjnn&-K(aqmMH_M3hFA`@#QCFO*!+YH z3OahCA~ZfID?K;*YP>BWcGDC!7CTX#+%a>}=4hy&pQ56M`n+C=-4PrRk}st(nTk z8EVE%|_4aW3j1+7kwh~e&Z8hY%l-E;Eionr6`1A_nz+9ig z&1Nu#T&kKId)hOUl$FgobxbvHQ%@7A%Wv%HYcwvA@#iSMtijYLusr$9Nx0PPvum(i zVVB^e-OJ=zL+)g*-m#;@t>%-5S$ZWyN6q z0D6voqq)dPXf`xKeZdT8k?-kzKx$r?^t^CEV9mgafxd#1O^vs{1SFLB6ndwWngV$C zPfq4-4{`9uk+ftU9YSfc^7d7Mcv@5FDWASk@x(N(&;E=*97*L6lYeZfDFs6 z_sNH8zUoS2Gb9b&-tbwPPQ=t9LgI8@yj`FQ(e{HiiYjo873eTEvj)+{Q>Y*~@DB0`0nb_jBsJ6BYi&%$5?=qJkan- zpDvE`K81rh$5Y5j-|Gj%eP$zq`@hnXGW3rs9A3lo7^#T!Bx_>{b;8Y!vLnBz+;=T+e89D2?|oX!Ho@Mm1S%da9_U{?EaRlw7ZC*`dN z`eu!J*i@q*R0WKM%**B(7jMvbxzO7dZ*ir^4E%Af2Bri4)1#1X(deN-107Eo*aO$- z3;IgBatxT~ivzlqpvQPoXn7GGSlz{ee+l;%5Jx>Q#1Eel#Z zC}9OSpN6v5q0M>-GY=?Ok3dJ^u9BCWh7z;XG!#ytCo?>0c?YYqh7|Y6{<%xN$kPqk zKOc;z8*J!9C(UG`eb`uS&|m+|r`~!*oe{S?bO)@1K3uB>Lu7)s{OBqCY&g*3gDcDE zX12!b0nFi{e7Y%GTv@%q`|wOHU*ZMCymM_NqlK`%L_dq7LBu-fM0j|GE!TX32jla6 z=2^dYSHBPiqobY2sgLRV!iHH<-#V526#AjXI7PD1Xin{wlyyBqF-5_mQ(Oq8*n(5k zhSW|aCw*#y(3+BNV_8XqkDXDfhR={FO+(44e9}l3T49(;7s{W|zZg#V)D4OP|S}uF!n4S@-{^ZAq zl0}h}$e1lsYEp_~3uJY7HQ6Kfhq{}RXpfR=!GbMpyr6(67%rqB26krb3z!NA)f*k}|U@)`4|2glz_o})`(VkgsHVLJ!y6=9Td(OG% z>)!jS`SJ};@nl)j7_aJJn|T?rVq)8C`vj3}!3^giOUmb6bsw09?&c&i%%$Fg@}QD-1gf|_$6Kd(_x9;yBa0atdUAfeu|)oPF?V`Iz2@8-tDAqOd@dfY zQ(^Wnmw$Ll`&pUe%_Abh&avg4akAy_rb1h1Ah(Qv83v=@{6OOs%`X3(#LrTq`?C=^ zPwX6_+bEWjAmijVc0CLB5`NB)st8TEk?yb=XA4qGFc~yadcKI6r&j< zEx&yzJL#^f*+7<+4P%eisAFOdUuR~wnkfoo-1@Z7FD)^u0WZDWmML&{WUAlJEf!Vm z%**DH;HMi7b`Y;KBZYVe9G&9{2B&Y@=31n9GnL0tdRTaZ!Pac%K5LUDE2d{GnakCr zMdPi6&Z$Ff6>UFS;v|(uX?akq^vTN8CzT;mmRA*xezrLe$9GEKbSj!%P70^_0xTM* zsuR=Q>c+A}ZKOiWw#8>R=e0jRHL1k1uE6N*-mCGft;R`(vABnAR<@26<67RdwV7_x;M6W0* zmW|IyRYI>)k(`A#*p;mO47OytQ?m+dfhc;1zP6 zO3PBc(ODp}t;+mpuWn;!%@ZojHJdNV5kJjw{S8T^aC+^@1l-f{WRm6kIfXROalont ztuCaV@|cmd`l_}@*$y=xQXIMd~jj!A%tGvSIz*q(rqevxpy$77P-Ef$m3oNFvaaF%pvR#678 zp63Z`<1Ax)7WV7}*5MaSX2n(kOlOVRT_R+G&COB7RSsSvG6-EKkeLtVdlnfC@~d=` zNQZVWtgW{fXfGt4>M6t)oW8EDK=vPyxY<$bqPoQ1{f@dTPK(j!@=KGUq8b zZu*!qKFt(ImWnjGfdmyAt5-Y|-D&&IAjbu8)02$OdlR`W zK5Ndi)(bK#*;9+A06DfgcI?9?vaLxHt}WaJkh?J z=dUNHP}RUsUngd&&gu$cZgcq7n02$GU0a*D-(ywR+PsuBSdq<}Q!AF6<=Cl}9Yg#y zO?7-cnZUg@(=;77_g>%7a&Ogt#>uo{mA$`?9mUSaWG~x-$?0(pJ8X?a+iJ!$k9XK| zx0#4!IYOW-Vn>@lMYElt-UUq^Lv~E+d6WuqrOg-=&E4e4;JgD1wXy77Ajmp8^waRb zN727yVn&EaqPsxTt=T=(FE^F8+1pwC=yKX56Z_kRbF|+=LmP8~z?jG?o>11gwKYGP z;wFVIO~e~&iRICjwXTbiGRvHrlCUQ^yuY@R9$$;FBquK7qe2&K5O1Ef;6TjvbzoVr zmLP{EI9N>Z&R|_wld>jQBfuN%a7m1{ccq;CyfZ;(-9|Cj_JA_S%ra{olXLCtC36y%P{zG;M_ipj&ZR-N!g>)X7uQ5o zzo)pS3|H1lx$TF!;|VoO#J`$&rV#Q(^JU+dN^Ux|#iIz`+IXB<)IAS0_lhMHHL`@s z4y-m%gWg69*cJUHg_HIE1G{#CMTIZmo4AG|AAIv#V{z?OtOR_v{P9@zHJ2}g8?2c+ zX*<5QiGP`%b-K}hTWxtWF|g&} zT|;1In~U0BZJva#kxcZ1fvmd&(Hmq2XE;7_cJ&$(&JNRSlCugiddzYmThiF1y3`dr zv-x$&isfgQG%w6ChEA7?4pT*$YNj1xRIl}YYWRLI~NRV>o~ETU!!;DESho8$s!=v?8O?^>J{Bc zHG@ymBDJ%qe;PZ!!|IE?dyh3T^I_#d}C$(q8WGy(C{VBO@MrD7;r{J zK7@_3Y}?ruW4y5}S5Lw5CH5f0+7{Fgh%jmCrDVgAS#3H)_&!OrGUE+hjB>_Vhdunf z9@|Jc__Vjldes?21%Gt*!(YoVpWF>uLCQAp#=x?+d>8#}Jv)osw^E?iaKa*x8LSVd z4o31;64h9+8v!nd>D{Ji{H_Zh0ixwD`K;SjI*V<>MJzrhXAJKOCvcWS{uQD>c_qfu zvd+>+(p%q~$$8-=u8nek82CZ~U)}v%BuOtBZgl~PuxTQAZ187`eH7sw&t9*ov zB#fE_nK*a$imQ*;coip`QvPz3&44&XI>zqv02vc)#F)Dc{KQRgZTY;s!H>=^=4fKQ z29}Ht?D-fV7&fsc=`kXk?IK6h64jv6O%$GdMrk$$rRA~fRA%6WXzsYN)&_Bp1gcG5 zA433C3~I|@MOU@da+zB^n;eZWZ8xtd!?RjOt82FXZEP5>;~+WP`kCbgMqei81}Mvx zzpj^cY!X^IFYYx|LUyZcDzm|Hk3{{$$#Jyk8w8F95w>?eVMbiEG?qbn5@lfH&YlFI zrmkDp7Ay@{u?Mdu=Y9-ECX?tTX?}S?u?u52@^nl6?2@L&_Nx{t#}m38q?Uxzi)c_! z+9FTmshGf9&8s>9o@M2dm_{$%@Y`?8*Plz&9C{!x(!u-vs^nJkTZ1Guuu}Qs)q^H(wI~P)lea z?&2{OtPXT&Gr8l=Qev|>3*f=vYuT*X1X^BsT5mF7-GnbKU%eVlh%K9slQ{{`HPaUX ztmbdZvvkF*Mrhyo1J+64HFN)&X{%q?V$v_znEx2mu>7?&oWWV6{Hc0 z*x&eqXoGjSq4{cR+H5qCxa&TOYXw^A-6=$k8rM$(kM0`44e=5u(HMdaydwm0sgR-$ z^jusf%9pL}n2j^Ou(50g&CWs?bBWtcylaHuR<~l#jjZ0>SpZ=cx!<<4Kv65+0&uNM z5y3b~jE$GNv_gv#c+LvoiR9jFmZuy2*;AZe!rnUzo@CwZC^QX~yOn!!Eo*r4+?=tZ z;_O*&5=h}S5I3+LZXUYO+*r}UMNFy?Gqb#0yQIMhJ3kyX<*DTcvKHB~z+GG2c)Y6B zpSAKlxJBw=GdV9U7S~C!keC*zC06i4#&iim`FREO*@)P%D4}X@H0!EHDZcLU|X(f zD_#X6hubn}10^mC2z~SN7+H0f=WM1{!>z@+t?O$GK=0qGrsv7zd&<9)Cjp{PG*@rs z--6Uz`L`y_bCNq3bbcCsGDZ|;XZROLWUgw{+lB9V@Ex!cDx!>sO55mCI+vtDe%*@RZi2r?mPkbt$cPDXn)Y zt!F~O>OC7<2zQ>t3pdU!x`|~VoquIXVCB-6FD1}g(L`3ns9CkiEDa2n4+Lp>Oe2E4 z?5L*f?vgXsT$7uINKW(7b*zzHtc(KTxG$wz3rG|NvcR&&d!xp8KB5r;CBPdWe~ zM=>}5T+VD`wSgOuBC$IU9Jv?JQ9+%Dy~I#B{K=atyUe58^pk4NrJXDQrOYFCT5Ta> z!*QZ>t0KbDa2!EE*h&w_LPniNIL-@5lsg}e3mMG~JuI}5XR+<6>&pu60oq866Nyzp zfamL^kuf@h*QuCCRICrm(?GSpL2nA}#hvp8luZ!B+OsU}Xl>$eO* zxira8CoPbqp3ZJ2=(4`G&zqd{0feL^B54yNj}>H2JwWB*Y2s$q?@D6E(3 z_QdShuJe*Ty;4Lp%`ExUJLffhaZ`t`fGagw?J~33bSbBBLD)R;9F)2toZQ#4=~=m4 zGG32>rSC8$K&Sm+GZ4btRN%&T@Y6#Qsvd2RXXL!Vmmax=i{??$SXE39TTsWkowKwu z@ci-9IT=PwfIW4^dvyvhW3enRo<+lefHmZmFlm`@B;(KqwuRu>Ds#lnCZSXBDD610 z-m=(X(vvZUU9s^RJF>MFn2&eY_Mix{-C@G+uy^d)@Oc zAS^fMD}?YuBIy8+Y~QQ7xR#s(VuP2(lc)rEqsjhu3^!GT_fI zF$Ov}8$apa&zzZHWh08%he<+LWAf?9wC?Pv7)NaMzHKA2a?=ONdqCG!wiBC4v-6UQ z_-;CgT;-<|!spvZR8Kx;ojRMe5IQx2_qE0|J0?7d z932E`ef0ztg_$M(^u0ET4Q&20X>}qHuhF3Z^3t6>)M<5t9vy5w3Husj znU>f2{1V?njQ}jPzIwiG01bPSfz;eT*Xd3}3o{x{7}t-~%qRIfLC{>|BqA8E(k_pq zPF5{^dX~Nk+JmVGL&PW7u^DTXsT6jL=~V0U24|S^Zy`o?t{ci?yLswlbQHpjnfsQh z7xsBiZ26FXfgZI`Hu=5C70VHih5dqA$XhX%zR8bZX!cEh-_rR;g&2PRDMsGP<(voNQ{*jCM{`FE42Vs% z0>bG#jV?^B(z9rE!`MpoyTQT29~P{dy%;FmP@k(%NIaq0XyxVCfv?|o{QFvt!e|Qy z)>wk~I;q9vTTrp-N{?*a0h_a@39FmkN6kYPCC8ug$UTQbxOozIcsCsIX%$@OyJ1|W znTWsiv>a2``Aity&tb1^VLQY;lV|J*sUL1-lYFEK7pyCHShCqp%zM-(^Xn!Y9+iXs!B4eU%|xoFFBGr z?IN$i?6f+?7rufXp^nRDwUdAocd_|OPm;at!Wn-l*JXg96-3Z;z@-Z-eK>=LCtEL~ zkk*?xGuBg%sOvIDDojt_w8eOH9FfAn` ztZ2qaihY{3l#DRM>uM6+81^lZCuzEf^t=IQC9-5;j;HyYUd*5t2dvUU*mcN#jXBmO z-<-20iNtZjsh2H~iZYv@&OFvlGv{Y0T<2kktG7@Qh17RCkC&yewI*a>Mf~O=U8jX8 zChRU#OE}8#qZ!2~t$kri-0CZ&jw}(Dq%}FO!xL-oPrFmXl!d55+|Lw zj^?pXQgo5v=6y^CerWyHe|aD~d-!_GuTt^o_x?)-H#1$FWg@=kZCNT0#qqfdhJA^p zCs-p(D48rLs!unE*@=ciGQ5^;or&4Pr%%v}FwpJ^bQpGzW_|7)<*c#2{51*TE@SMC zQXuahh5IuPFp9ayu0oq)eO0_cbkJua2KCiu4hfnNCkGE&n)>-m83BL z6#eJhcfr>{+UF-D=JGAhL#rjIrZpWVgng&oMdoldJZb!}k~#}#$Za#^KlxED!q{0e z!Cdr9Q9KF9xDtiqJ~4;sAQj`>CCQUF<-@1**gHo})esbJHcIYbi~)rkg|4uC47oru zBh6fE&LNrgEL=|5Jq>fEC0{6kMif}UGDwediOe! zXS>j^63bFLUb-9aJ;6-e6lP21jco!oXBTY$3HY(wI5LpBjPlZ-Y&PAncgGnm|LKo)hglK9 z6R%_(ke6q?Xb(Eb;0|aCxgRch8pgjEL1S)#<=w~6&$CNEr9{^4Jqv!Mgif@|gTql+ zlYLs>QNo7Lbl2oNVR4 zQ^=_9D(Nr%tUaFqE?H0!uAoEIfLSLO9QVx66qTR&|`{XLS>7`yDM8O*3aLmmYe8SXaAk*NX>o$ zm@;+qC>WP%Z|y$qZs#E!3-NM(-^P`wZWx7wbtoiiYS!&8Wqw~q0*Z~m)>kt^i6LbL z#{iOBE#A?(b*D*6wmWm@181ACrU<1nMSJ8mh+$PTlR_T*@LfRp(it%et?!*6V~ZJh zd~JnUdnX<_5CGYJonV(UB8B5o_ZY7`$e@$_czK6+UqqdWi>A;#`_VkXfnw z6--l*QVb?`6(5Kn!s&J_Mbqa{I86arvLY3)e1M^0sEW*Y7aYcaI`H`#BJE^(V*DmYt|>y&D9 zP1`<-pB=O=Mcx?w+*yNrQ!GZY)H?O!X36JhBTGkPU86@Xe!^;!aAHDdR|ydzPD)H+ z@XXQEfh}w$o7Gn(>;=6q1(B`Jc>t;3cm^OYGFO$p7=)RfCP{>Kr)d(-%Z`=M zR7>CF)|eYP5i30T#$GHkio#+XK0saHn>n?*k7jAq#}j>7JCaT6+0ai_)| zCS0cBawc5swrt4AwDs^QrlgqoA@br<_>{4pD`y?D(aw)fq+~l2S>5(!^BIujiZ&na zi`ze%kS|8r5vK|DWm=aVv(|Ucnz)QADPsEz;W$+v!^FvNw05IXrcg8EP3leSFT-A^ z`qoORCyK^RS}9u{&4|1ZSBZenR4+$DTDRNT$16%WWZPEivfZALu#q{lVd6l;MAmiP zEO50T^VrE-0U7(aU9Iu*_?9^oe$jWS6 zn{u^mWW6iwo1afOAA8Mj&~+o~o%h+6jAOO8wu%Oh{oM`9ZvD6Qf=_e+s~oYh*C~`8 zToS#)F&98 zeikVTxv)3Wl~HLh=5Fa`;pa6h_$Btu-Ny1Bo&)wIs5SJwjV>V^2A<_pd*IaKdMI){195X_eJn2VIZrG-%K<*x%!eQmN;LexA4YHdqpigxu!DreFr%%KbdvT)=|d9 zp|k)cLtINsbjD+C(j#I*q1MfLkwZXg$tcoyhC9%7Bk8qX>yGM~6h^GHEjg&D<5)9wM{mFJ^U2 zxQxw2LmWY(QTzScQF08co#r5%2qHgnA$=*kNo=FAf%oq8$RLT*J0to|iiyyokB=uk z;gpaYEh|LN%84VKOXzZvZ&^^HLBx4>v@;9||0;!raKfaueU4#Zo|bZ&!jRj2!c7=n zB+n1BvB-AI&3KL0i*|S_3@Z+-(R7qb{pFr2yk4WdwjKOQ>gIZqC7Jc)Pq8O^YU{~z zlAbKRKN<$^%;-3ZFQAZ?#2iHcMd7e7YvcBfc%PYbq{WSlry@ z7Pp6j-0k+mOzq=}$L@HPspP$e0ar^nw)gK8h^e4Um1tBZ(T>bGB=ZEiDZh5*8Wu8) z_(~J6imMmRGjiMfPc}y3{zSH^ab;+eQrk!B-cKnEI42`C_$L7GI+8Da=kOf?dGo}vybL7CPJe_V4b#nVZW<8t%`OlKfG|S zqe==1ntLD9TXY%oFGiYXJo3?;Aa4HCInESL+|6W?Bo(hpN97IS2&=7o_Kw|u_B!GY zDQxLd(SN7U*6w5Kz+OD^oB2e@>E~rY$h>I}RYt3Sl`#|vaDAKk7P{9U?U47dGVcOM zX3UMT%%Bqd+Sjv?#KKPP6Lrqd8aJ3m(oYdNI2^|Ldzi4X;q76^yxcmUNnT<}F1Tr~ zJyKyd%!)g;+CBKBz_`+CzmddPcbfEmR8{<<08b46(c3eU)=ppV#iL+M$jNt_Q8&JJTcTs83p=U4GeDik)=nPFOU`Zq@51?e!DhsUJ4(`j zI;kh#+JVnUFH-8<-l^r}&P%6AUU-CCD?^l&B(kdoGoL3X-nfaYt2?L5n3gu@82G~{ zEfrUSluXdp|>Z5`Qb=&Ir4wDYz07~yBL+s)@S8HNE7cdUG33Yf9A5?hWO6 zps+n9gnE{r5zZ>c3AG#ETCz6)Og@#2UYQD-n1~s}ff>`q;M_p~kn!fqK&rqaAJGMf z%isM70k4phM3RUn#LLrlW1v%v$0sh*w%^PfxrOj_V@lCa?sb{`(bWSru^8H7S% zvz>rijv7nz6JGpes>b)T$ek?TzRw{%lbG{6+bd zQY^wyejhB}&`~Wnt^-@$4wI;+hOweh$W3U*s= zCzR1w@r9DtaA98-^qb2~KYT&X^;I^Bzl`>I-Pn2O!c^%*QmV7y@dTstCzE^;Ua(!W zzNW}6oE9k}4gf=m9ncF>ZSD9{|dC%?X?3tRHLolV1+FT$ddd^>fDTN;AeLne}qJC|S- zcJh7VmBj31xBAdX;;T;kvoIV*n=Q??cH!{Cb9j*B0+j(krdp1;!aE;OFZ34@(lyFGp) zy2sWo0el2;*;QL9J6E7K;^P*hizRIsORI|;bn8}Xrh%@_E0OT|3&8GHj_*;pP2v`r zYy+(cx5tE;Y=iRvCE0p35yl|_^{p|l6AsIMDDoiOs7>BliL2dX zQ-Vj-(dLL|uNioK;hPvuYJFxfh(}!sMjQyoAKjDNMVXY$+c{axPzQLr*+=43KRi?5 z=!l>b7BdUbDIG4KrC#1#>RjJ$u6S()r$wE7UNm&_7Fm=%tOVqk+iQ33_n=|aEm2*y z>%Q{xmb7?W5Gh_MOu8hMq;w3s7giY1li~p z44q`o(u#_rD!mSdFY+DsWROJchDwGLr$c!CX&Nd`WaVK<@dJ5rNFi<)tbvhSe0g6s z>$d!qd)jjMOTYOgC_$OKEP1S5(nhJO^`y~-CEdt~nlan?518BeyBZ!ZZme|GhmtI#pBVtjvpgj6-!kK={0j32s` z<|Gqu9AwU>+xEo%@_AW5DgM&cl;+q=5h5O4#%Xg~l+!j_6WJw67>3W0jxKMgD6M&? z{d{hg=k}eTSVuh9O&4YB3T<@$UfYZRwUXLhV0mV3{pIlF64`cQ;1lgmDUK2;cNz*w zTgmEoD=Vbf%(b+2mz@yFanEVVp{ykDbBTjAd-rj~RW7fzIyyAnKFPt$K&9iS?%Hob z-O$>0V?!#ceew87)vT(9$&3IOhgwP!wPM}4tc1V}+&tPcP&KsrGLw0aHZWvZT?7J| z!?4NTnD+#EGTH3>-Q~y*oeI_+BTd^kI7L7$1Xt8rloCsB-e$1nQE7&4PC=v_Q7KEO zISDG`UbMy28J`4 z84MkaXL&huL5!xkB%5-nxzLe+e}3WnmY=p2WblOjQBa7M61!mH=Bp!$Z|VyWO=!MPZ`I%3zZpQZMnJHbH=^C1(nrq%jIa6 zxZhWnEy+f^qTMNsWX`v@$pm1GI*QwUn@ODCaki4%`+4&;ZsRKknm2N_YNT?yjTcI; zrbFxP6I9Ytll9})wVEgf?G{kAxt)q^V;Y_mAD8&a7_%cIOvq zgv6@1L#h)Qk;P=~{_Y&(DtdDsuQa~LDCEf3mY*_FTke1k+nUZD)^3p#3t@1w+mWdy z>UyA1=SVaAVyEA&85f2eQ?{_Dx{JKdJsOE&7p4e-g?2J8P$Eo=RxS>sI29?|^_@J| zD9{C|?BUF=isBnV&7QebLF_5CzN$ld`S+&8aD%I=7@d{;YQKRJUARpEjI1I;yQXoI z)Di6Dmu%HWh|n*FafeELEp;0>3>(?VN0LN#ebBC<)We+(_wH!VqcS-Rd%sKbJoG72 zcDpf`J|E1?1R1xTK^`|CBa(G>FLMjqaVz~1&FL^SYgo{#4+nij^)CDfSNVuO?=a4@ z{8R={o@Gvg)5tKAkeXYH-@VdmVx_j8Liqh({nE3)G4&Td|5so9`mLwm|Kvs}|IIIb z@wxreKYpvUxBA&awRNk1Z}nhdPvC2UuO#>VLz%sO`q-_HvOWg+=nI8fb(Ut<Zylxm4XgPzv__puV4}Za-)RBo6e4 z!XVGee<9|RIA9fCOj`2&;I7bDtEonHwlX>hEIb@2S4NBdeT+0(2!%qSSm-U3d+VXv z=&u(G)kd+eUf`>z9+<>fAK!)E`vfKb1*T9Sw?=ZTZ-5R*$NI|UG5{&nM+dc!m-NXv zL-pQjQ;F(w&H8LoV&KG*2fd_LZ34}ThOexY`v9f&Zcl&pWq_(2Rm;lJ!BDJ@SGOOh zM9FDSg0o_E*7}|;_80s5$EvOG(@ph8x!7ATl*<5Lq^C2Q-kDbGhC_&m{brZ0f!_60`NJj6tiW86`Py(Gd;D44idp0o&KT^4tFPj(^?m z4^+Gf%BXTic-Q!b$D>768LJ%StGeGo0tHqF2$Q-7Y2}KMyz+ug{6)?0UA3Auc0462 zoZ=ZEZucE9+8hYQUQ%cHsGI_2$06TQ>+(36wBHuOAq=&*Z8E|Y6=#!5vuZwTy=~L> z93xln6Q%Bhg{$|C@-Q%30DBk84}_snIFwZ7+ykLJS|~mcco?ME5|wjG7RefYAnc;5 zl9h8j438H2{GsSYMXgwM*6u^g!V9{=~kpCf(HXoLj=J1JQlDTN+BwT4)HC9=lKW3@qsU@2)esnsswq4g%* zGZcC}0Xt9`ey`4|#&9p(KFh+ZT(K|Z4|?6!?PAfIy=6>P90+1~9!SyIZF(*Cha%!; z#Eaghs07fn)z;gP<4SM8)_X}G1Ns=!$1Z&g>tjS8qxz`oV^JSXeQ@|T^ztH%(0h#! zdRi>idx|3<6rL=OjMji^ta{B5TilhVTWnz$@&jJ4WtHXU-BEzI!GtOy! z14&gV*Z8QJ%=)CbbBkK#>aUPltO;-HLTK*+s?d!VN1^(fL{nK{6vk@Gs=h`iq57J* z^%mR>#cq|!ZoOG)eG{x0KeXN)Vo5^=Xy1BM7&^_jn!IVe{bu<<(!yBTGPfUBdi(Lh zXrW$sywGAcBUbsAq=!}-BxFr!JSbL&AWBrusoSqv&97CEoUL0nFk|cg0m~WTp8=^d zfTq$2c;R8BsOH~>9RP85ND`&>ZP8QEZeLKh+ZPfN-vURpp|}=?srPQB^{XJQT&yfs z*WrNCB0Nne#!N8Io8|Iw=%JFeflRx=vDj&p!na3lZM;eLh@Rgp3wc!L|NBB2WoXEI zTVvQD1A_O%A_XvGVYG6NhC@;$#p*S6QdTZ$ShKfi3Dy%?#HlC6=bH(g=T`@ieO*Iip3-?D?O*c>K`1{IG0z|Bwmy*8}q; zTVL;s>ENegxro3GW0mb&ef^(k{aT;$`}(0nUm_1685|I*W8lZ7LwSH=lI78&vCl30 z{2DwvVk~r_U);sW_Ql8&nq#8#U)F%N8mKJOt2*unzrqDmDvs29E88Dbt{~T#M|rs3 z54I18#mY5T0NV#_B~%-90SFD0^h02xrqpbu^@ru%_5SRkx_!J-FSR|7mOoY>=*WRq z+YjvqpJUaA_d>&Jy}$jLD&wi_ZD_3Oc%e6ur~YiP7*r9K?13SmsgDdDJwYaOFV>hY z>%{ZQ>3rb9hnOaFe3011ez@O}|;!>>kg@FXdz1q1mJqs9m8mV{d5@n7AQ#P)+A zQW>K)oOmvdke(K#2$8k(&B2RofTfHY9tf zo@RZH*q|inzV$AAj9SA+k@$db#RETa_S9E(#w7}-M(gWZwn`wezFzE?5N(J%{!nt@ zxIP}buU@k0<)|dA1~+iw(LDh&dKDwk_Cs*qo}g~NiR7{pgW+2yuD<1vd`soOMGl|J zu?Gx6hOf51V>Q3yHNRtw{w+RL2c}kWk(FYdBZ6-E`jxqWIsLe1*9*#-KQ+YhsH=L9 zGA2(#pl7PfF zMuD$v!r%r2->lvgF@Dd8@q12;-!pXo9t#DUw0@YF;H@8Gf=dXft?Qs4yI6T2;g(eX zAXff>%A)4mM$Nb3-$HF~eE^`o4UNdxVi4>#1c-8NohYNO$H6BUi+ZJ2i63%O89E2O5~w?k~I1Rb^Va0QXCxs z%L8UMj1FK+=&zr@5`Xf|@Fxr90X_zYcpB7XMwJ?h7?2M$GNO6^@0t^I0_uKr#DPuHSo*Syhb%R7$vOHP^6swOlZY7^@n2ceuycd3vCQ4 z-~%ZX^S0LNTS{&}K5V7m=2-;@PDBkQ=tF~dRw>EgD<%<+SFT`<3mVMWqm`qz>KPEx zhtkK1Gp|X*g3HH!-j$;D2D4K5qX9>9(0VpAte!pI73f`181!g9fw%p54e-&=Z!$L-wR}BTM0AP@RMxykrCN`ZIwQ;o{y*lQIHR)tS^t`7 z{k8BQUU(~nzl_-HFY>|jvvVgV6vSh3g@J$f?q5Iso-4t;qSfshX47mfBA>MGyZ>nu4mtcKl{qx z{^c_d9zXm~U+915c4hH}&s_bDzw`amk4!H=J@K#0d;i*B`QXgqzCHibpE+^q5B`s_|7G>V%m3-`5*)aM@G4d=RW1=0!Lc1G z^$u3R*^faRdZlt{u%}dzLaRJ8*jFkJR-Uo?&sczzW+X}_wcq|=w4`?BN_mh6eU-6a z2}>6Hc9({R1_rEDk0>LeEtMB`l}cmfAr;XMwj<2hUwP5`f06GJqJe^u`cR?V-`|(~ z8!inD4XLXE{?Sv9+;J_e*~<1TbAY88PJr-l1fHptE2TlxTV!IpLca2#8EUFg9x9;` zw_iYvR~uUVV|~3C=8fKfRmFsfVMs!idTZ1e^Bg=%k$L&g6vE@sv=}ZHhfnC|>1O%q znq_`1nv8+u*R1)ar9M$Qc$*tqT`TlkIa=0el@+G^dWki${W@|1-v*O-SE)~5&RUXT z70Q6Ba!RJo$OsgXVpwZleI^IiTm>|cZa)$3p7!BVe` z)@=n0nQ+;&`^r9WYrDVH(^q-DETCU63po;Qtb>utw!7imxBKMFyg7hr%@^6C!^p_K zQpqfDnU}1z+xCT}sb$ZUlxfp?9o%T~C*6|k7_g;PIXY0nm#Us2JA(9g zA))ZLJ!U~AjK25Kr8r(Cf@J!)PmK8<6(wm1nFz%9_&;{{j^mi9w@rDBAUM3oBVStG zMi%06P~b{QtL25t3kLE#BVtk^e4x||mnaq}1kLU)5oKi@nDQuOJO#ySy@RM^&dsfPl2e#BNwy~vwSR`>Vx?;&_sy};im`P<(oQ{lU8ZfyUAt&f3HAxU9A zL$+esOHklR$pgUxq%}SdvMJ)8r5pzgMqu3j5V{lLHKWS#_1<71^qo5W#HFV~Q1arl zCr+M*aRI1Yu6gwJ8!*Z@%H=%@*cby;w|~H-(HsA)BpdZ#KqQd1{V$YMwC63jA*O~xWwaISR@wf2 zShrRitL;Uw$Pd#0aNRp{CEqR&6hiOWttLkUMWfeX>sqn0MJI~4wPcpSh2PNpV0BoD zT3YZJV&8-X#lUzT%udc<>wROvTlV=ijQesAI0O^M7w`4>*T|mI0FLN;=752@TU5~U zf?JDfx&64Aq^)l}Qu>${GX9fwPCbGCR=Mmdil#V%9|}%}X4&v(x~sBP*(wRPYi0aL zVeM^U6mzgJ2K_NFwm<&G(l2NgUQ_Ik9@de-mBkSPd9@KD^bC4h{SmIUG2cdF3J{^q zhPuYYKaPa_xc+Z_s9GBOCa_AxRIXTW*CL5- z4NJ5OrSA(*gGdW{5X)5%uz=(JwLXNQB!MM05uzG`lzj}s9O~f1$`<<=M6I<-Kg%i= zYKcC=A$-}x`~L90_=(7BWeb$ZoDu|OR1zaXyKnQz7oio{=)E3vKyjoe;TAYU!A$Kc zQC2%#`j|Q&5tw42);l&|a+C!>ysz(fzy$-ukN33}%C;6HudkH%l?M4lA*1}NV>KnN zNV-r8FB%gbKspt7mj+nnC`bG^+1W^w*8j{z;e3dHK$bUhfYO?DAZ;acY9A{NII-8v*nSo(k{MG@k~RrbEi3Z(qvGh#xg&twq)|q z4uxX<>cd=t*QK7fUw8k8Z7ls~RR0O0n<$|F58(=xH;##><+8+e>+1%G2ez&Lt#J^` zRBpKxA&Mkh3387Rpk*IHT%m;6q_QPKO^Xs<4|ySEi5qC8CrF=5zpwgKc)z?0(XK|; z%O2G5uNVukd4N;F|Lc27gVomG(kNmBi3aq(iMBGTO!)*rMG}EQfpQRVl{X%>&l964 zfEyz`R^B*aq^O|roXA4DqF*K&f2TKu%8RV;5w_hz^^HrmmGcj(Z#+|Z!*%HQJXH9- zk&(}q?i(3Fj#EhRj!>RLcUrTA1+#b|^Lu&_0mRMh!-&z=_ks2Mvh0#C zbs#>=zSAV)xq4iR-s@74{ZYXW%KxztgQZe!{k8&uZ#4G7M+i@=PW|o53Js}jbp8I% zfzabZn<9UTHGaRcWrMQFgtw-3^<7Zb#B+ja=(5QK-Q#&ndJH8e$Carq%Mg(St%>>q zmm;zuC<0ugw7zaKA6zYasm7}LkhLlVN21@rZ^I)q%gGF5G#X(!6Hq@Qs%C)y$QbxX z)t3IhuavTuHZJ_X0f{a{s3e*RUX5*PUQB3oeHrc9$K-BQ-?+&F>_H3_E6)Jl%^{*Q zFC-;Y8qSjaS+blZ2eV{vmfV#kOIdOtOAaMT7I5VfyH-TgnED$x(T*(W$`zB&+qds4 z$rk*8B6-)Qg{aGWo$thR^|-BI-qqG{DCI&O<-W)(2W|+6+)Irw^4;R)P6} zByri2DypWoLwpR$VpVil{tQB(XGD!vim1R18|)9oVHwr(I&ns2`2AR-hzF=j&}jPu zS`LtwYxx2C$?}lA3L4USmpUYOco)S(rG6G~pVgFQ*JphDHrzb`P||qy;^1KAjoU2O z>KmV=IeL~8GsHA&tP#^LQZOc3-z6@9Mqw>s>;9O=j5#u9-T?N+2a1qrY=ij&3{5>? zZd2FBA1w_EmcH_U07A76)cY`q40~3YK1NDb$i)4hCN&IHgERpPnvzX)7kO$ZHodRf zU=|pxKakxDjPf~PNA&g!4;0LK^a2ie68P13~*|`KbUqHLjzV&Tc2|9{| z*I8UBgcmPdZ}RJ*^&9*pzoM#N4du6Mo7WE|zeszCA8u`KTx?u@a${{pzn7cj*Y%U{ z{Ge$4z}iNAZMEL0^F!DN?f1m%^Nr2rP2P)Uqi$c6`Xz*B$9RU3Wp5BH*#0ptP7MiE zuC5D>m;$xZ5bGHE=Kmo95qHu-2+Y|E?W{l!T;(V^l6&NsJEtB@@V)5`ggiQe`Jg)Z z($I*@KR|&)lAA+NX$~dEJ{~rf5>6Qxnca_+KU{>br zA$`~u=Gl!MSv=q#S4NOA{Lht!WHX6-Yz)RhCz~=i+eMO$cmfTuIOH0sP!8T1lj!dq zEbWsX(33(BaYmd>vYP(PGEkgv`#snoK^n__#DcO&(>^$jFOH??tKYx0&Un&d<*Vdh z1O7EM%oMMv@3OjkptQSk1;2%mzo7xA%SsFg>~mRC81di@GDE=^h$>w{iQrmO0L4M+ z_HAwLuxb?&5SGCYy3>@JQOQ)RRb|_f0I#7CWiVEQ*&(t3G2Xr{ez*Z7v$j+&=uu|k z8hiZLfEw~2|a&f>ELRUBf}3A!hVz43v1Ww z{u}k1^(9u?p{IFyp+ZpnQ?uE|#zOt64SrktI`7VUxDbAUpBS!R+uB;ruAP`{lER@ZjX+baQ5DVdmiYv85viri!uGI4le zYH_-GbbfMXrg3;`adGL$#KN)W%+&nE{LIqKk?F?#;iaX;`NqUV^XPbEetLdpe7<>X zVfygm^wj*3naT0PlfZIhe33ebkIXMlFC3j3Uph9mG(I(PWM+K2apW)sjp?J4(^Csm zhZiSjj*TBaHgoLQ#Kht0nPZbj4j*Y8nV(;no@UIc>BGmSn^P0b$?>BTGmY_Mhnv&W zN2d;t&rD1mYfMejS#x1>skt<9?C{L^k?EsHrY4UqOiYeXGoQna!$;>A8b_PWV^cHJ z6EibQ(~IL1i;bnj&E~?)($eAi1vb|T*a7-S!nZtOjRFD5k3GN9SbutLHT|vVi`O>R zUfnFT{_3GZ>nk0<&3x!Wb7N(Bb8~rZb@NdC!R9P4{iWuI>MNTIYa7>>=O3y+*W6J3 zN1f{957m?3>wa{#d1Gs%aXm-pi)$}6S09}}a-=b{Fmrg~*wl1${OGa0*de2HFDR(Ac6oW8CfE{IzE^C(W!zPW}HXhWbA%5=uWc_q{*MZ=y7f&@``C^{k+8@^DfBB1-;J=$~*@xB_=QYfK75^6h!1+Lv`3p+dyH9I9 zS1*LiC)YMkUB5o7U$-~XHk*eQB`Ns#$DgJT9XR~&|NcM0K*5mzagH#w4{zHGydPy} zzUrOf@6T~!{8!m3jsJeNXPV@5T(G*#=V|Vy&V{oa#($b;y#)SA()#zk-hcl`=9{qc zTE>n&WuAG8uL8a5+MVvY>IS(k0O+oV{yk`|bSGBV0XFS!NP4@`YJ9u* zKhtRem~@##R}l2ubDcf?(CUmcZ~t$aO9|kBd%-_PTiu#n;Xl91$6b@;MfbXrq{|k1 z>&FvZBhlL_{0d#&Ak^KJ_yXy`yP=2EzWkC}?nSWlIcu|Apv_Y@AAhTbua;BRHo~oI zaC+Uf=99b4Ngvr(e*5dLDdHtdgNz^hcrJl7xd}@7B(RPrf4Xd@`JW0E+6d#iU=iQ8 zmc9k?j^iET7L~mqm_B|b{33nmR;?}wUN>y&CcL1(%GDSQ4ye=Zee}YuuE-psp57ne z*Vhgi&UIIL-TrjTNR()wG4=)j&KdmYld(j7K@f4ECsFmzc+1bj>34y?1eO0Nc!r5P y_aQir8t&WMc2b}l{*PO`c%MtRm;KKFy|mT1ZU6p5G3dbeEiKpo{_npz4E#UC84nBq literal 0 HcmV?d00001 diff --git a/clients/unity/simple_sample/Library/AnnotationManager b/clients/unity/simple_sample/Library/AnnotationManager new file mode 100644 index 0000000000000000000000000000000000000000..2d1e3612dc4f93f1041b5718acac417dfa00bbdb GIT binary patch literal 4116 zcmeH}-%b=U6vhw8KM@pBLEs%o0J-C05K%XgK-ds2H{F@CjG1jsTTS4KH}Fw>2j9tC z)^koPKW&jSA z(oVQis}rHbKpJ>2tOO)RyaqoAg*$**Y%V&=?d`&_ciR6dbN9I{ zEfi4$<>TX^5Ki!U^o1zmUexbvU7^}euGO&;{Yn-*J;z``Gv5j5r}B2F>+F0BTPjB$ zRKnWM2NtDb)bMZf?qNj&W9sCFF=oscky5h+{O)PX^HD%rl&)h#cklwJ_cj z8eO6xj5^`PkL$eb5oSU;+s36u&Z@6^PNeBebvG~E-YO+3O?MYFtM<20uYr_+jM3vY({faS-Ugq zI7h*ZPaB1O8%FCyv#=XACZupxX+iJqr8ZST*PO$(F~6t8S=vxnJTr=-Ap`w{ps zd_KaAG_q%f_9=QVu_XUAlKz?*?OKSr--MX^M+osKeEtoeVtIaH{@h?e{CjwKcnsRd z9}r@-ELF9oihWgdWPhZ@MOi8Vz#)#nf~2Um8L_>dRZEK^-MO}VNA;`AairD~IV=TO zG9Z2GK~PWS80hs%rKL7{AM|0dM)7mCDC7bC$BFN!?=6F4w#>w3d{61Qa6T+{9;}aL zT!=_kQoIbU2eAtZw{mHFy(+98^`b@sNN>tP4OCdU>G_DBF* zG#H$QE_~(O+LFN@^I#~WC{;htB0N;_IA>}hP`KSZPeAozPep5av8mF0UnW|FCpf)g z8gW*M)9~-qnJB-TCAo|?RhcJ~D$X;#_v3sJ)n|h;nW|2n4U)KDIRl^c3^dNrRf(!p zH1mn4I9i+IaD4)g3l-z1>H5So+z!=eK7pR~EGKFq(6bz$nBxf4TYTa<2g4>mMe>Q~ z0~qXFJAH|xwQ+SkxBf_GLj@tPH->S7h5Mq`V>pQ;9U`w7U`n*e z@v4Ji(<8@g0gU8$J%EuMZ+I}h`mrn&>=k|HO^0b&{|N`frf2jjJB4K@QCg_YoT+YQM1az}Q*ag#DP=K^99>*t4c{Y6+Vd zgz1i16(++i(5J5xF9z@e8-Z1{>n6oT>bG07e^L3t+V2OCF38#28ZTRd|-s+3ParYIDAB zL)SZ`*9@30FBCrF08h=*||lTPElzG8SifU1JFU>!J!xs46eIkkjM?G|=T8?*cPd&Xk5#X&Y544WPY*$QCfAlCyJ zImosLqsz_iq&vIhZV-L6OYSDnA*Fv{^IN5H)9jM_(SzUxjW=8c*Dt-uHJs)rHioLg zjM3pl5EAn9cbq>?3;!G_Bz5?PwLA0@F_5r7;-b}(n zhiK7ZRHy}L3KU+{E fo(a0yk6V9vXza2YVErWg;csgAchrJ`Z`uC2kLXJ7^Ax4ZF*+pu}m!Rwe_Ia_gM@0(qLgU)`CJ zg&2qxpm+X&NQ(S8Gx{kV1hDr9;ME%dcuGBW0Pnje-4EYS;O~09?$G@WU4zP$dWJC? zdl_J$0s^hB8D~A*cpRdqX8^6Dl3b5?k|fM(cdo~q zb*Z|yJJ%CpSi;mp$P4A`Ogy{4ncXHb=SnD4n4;C_KjH6Kd6XD*93rM0HS}aU{(?Rj zX9az>S-*ptaN)kHh<>j8PdP&2pSSZ9@1l##E3)X8f6>m5bd{?}g{bnDKe&gVXQ(x5 zse|7Z)}6Y^kV%!5CKOc1)La%Z2=ub%cW#&!O1ob*SHH)*1NZep*&Ow@fk$m|(W7H;@O@(xGyGNZ jm6RMv4kQPX1IdBpKyn~CkQ_)3BnSS_fsXuIbVUCEJqfEh literal 0 HcmV?d00001 diff --git a/clients/unity/simple_sample/Library/EditorUserBuildSettings.asset b/clients/unity/simple_sample/Library/EditorUserBuildSettings.asset new file mode 100644 index 0000000000000000000000000000000000000000..199deaca3dba820b9542ab34a0759f99cfcdc9f6 GIT binary patch literal 4160 zcmeHKU2oGc6ukq+_xCr9-!N$#yti97s8r}gn8q7&lH1nIwJXOdD^L6mek|o)I~j@8 zsC(csS8D9o=iK9a>_iQ~=5K(99RRpREj0jdw|BPRjdtMAa=F}~`>ksLhpBYNo@8kE zbE(n@os)W;!M?~42)Fc1x-bEL0X(PXq_5rHE=<1-H9gC5S}{1F&d4iTZOw z8A}8&GBAm7(rBOm3QcpA`MK>{D;C9-*KoC%FEPxC!WuI96TK`;bCi>#b^~FwIc_*iIa2mK70{&jLxr~ z_Q(h0%Lw=g6`6-=h4J2+eCBDl3v4qjazdv<8I2XSJB_riO(xQjU~Vg0dbbf@uI^OI zD39I0g6^%Q97lU~%KfzzQt4rwj|VtM=XIU%Fw{><-D~E2&h5+XeR$jqJuq66x5w6uq(bZAPnzLfrOXds@R*M=Cx6l6U2*c4xNsT?6DYLk!gCBH`>e(tv?(576rTW?*$|IxFqL>$fvWgQe zrX+GUkg*k3V&*X~oAHO|GbI!0KIKXsOfWeMj91N!3j;zSL(N5bnb%cPC*0I`ysJ}d zWLiHcTUA=ouhZy+SQDPi#Vovs-mD<;5ZhQ<*`YqaeEHW#>p<&3>p<&3>p<&3>p<&3 U>%f0>fIoTpZ)f@Gd)d@~0o*SdRR910 literal 0 HcmV?d00001 diff --git a/clients/unity/simple_sample/Library/EditorUserSettings.asset b/clients/unity/simple_sample/Library/EditorUserSettings.asset new file mode 100644 index 0000000000000000000000000000000000000000..c0862d8a1f4255dc66ec13e067db840663f655f0 GIT binary patch literal 4108 zcmeHF%TB{E5Zspc8-AoxdE8qH2u?jz?G-tRTa22xvYi8*`Yn7UN5bwpMrl>V2jG#C z-FU~d>u~_up8)5_0C0d21Hg5s+qs!`;j5~u7Jh%=bDt@v&DcsalFq4OX5m&?2}r4E z51~!3CBQC*@l)ZhE+Ky&Ca*Gek1CT7bAh|Iu}Go>iXqR%0@(vyOx0{6=B2c(&6 z^z^N?e0z0Kq7V~xNZpF;W~>TzflZ-dcf)ZLTNL4jU}8p4jX29N}6} z`E4G$e?s60g22MFm*UD;Q zSSf}40G_5qYwVu-nLF>$`}4!_jcf1IMBh!+*b?`vfZj_H#~;GL1%afeoRaov2Mg`t zuZ&S&{)rKqJ|8fs8B`W@82pMkXzsz~$E13M|Y3zj$ljn&gpdbSvQ(Z@tSom|&`q zMz6|{+!m*M{jU%5B z%ycyuKHk9fml7wnK7nsuiPIGb9EHw^u^0R)@QW4|hzdjnq5@HYs6bR8Di9Tj3Pc6| GnF7C+9iD6e literal 0 HcmV?d00001 diff --git a/clients/unity/simple_sample/Library/MonoManager.asset b/clients/unity/simple_sample/Library/MonoManager.asset new file mode 100644 index 0000000000000000000000000000000000000000..80d34e17d4aaccbfd1c45166eeb5744da41c2414 GIT binary patch literal 4100 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 literal 0 HcmV?d00001 diff --git a/clients/unity/simple_sample/Library/ScriptAssemblies/Assembly-CSharp.dll b/clients/unity/simple_sample/Library/ScriptAssemblies/Assembly-CSharp.dll new file mode 100644 index 0000000000000000000000000000000000000000..6f0a04c8064bda98709c0e40245dd200b7e74ef0 GIT binary patch literal 69120 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 X&UJjF?Z-!MdNMWOhLCsXxP?!!NU* z@61e@*4;)Q)CYT#?ap+*J(q94IlD_VexB&UArYPCGoOg&rlzN!Y){koPN#F6=cA)U z3wf^Xsj*u8EIKeoEO*0-phbo16fm|to zttQK@T|=Rg#guP`mECjIqr>h&4(kUyx}o!2_E|HTo2;w6F6e8#8u%$=`g#;URD`0R z9VzBU0c4N&Y0FSURdpkmU^gQawO!zT1>a&!NC+5|(XZg!{2weNgRz&JXc#-;4*p~l zOuIPNUB52z=8I$9V+^dD6OVgkc3;+e5uoSk94R!oHD*D7(A$K~IT?Zdkj7YS*dB@N zZ9g}{P(vijUvGq!iZ#!dl9aPp+P6B((^mF^8)?PpZB=z!zz0Txai<*Nsw4iJo6BiK zb6Z6oajOIl=I;~x=Dy`|z``7V4kszO_(z#AW7=?M5t`!GIVg*`cMi%T?wtYW71P}8 zwkFgMlU&>G+^o^){^r{6yy*NXRiTdDH(lg!DXS%A+oUWN68ofw#>41pN@|jOWGZT{&&$cJ&d$-#?$>ZT+ zqB(1IzM^wAuX07NmDR+vUBUC=1UemAgEp43e0qwSoA0Zi^;Z5aP4r?z)hzKcGz1_U z&Y}NyV`-jhyJ;f+WvOTucljj~_WkkcCs_!A!NMZw$FNBU!`-kl*p!2fI8-TY+QCj0 zz-(^PtVTO3udk}6qvdpr>p1Uo#;7*ABd9yWn83o&tfO$vQD@VyT9V{PA{KBMY}J(^ zFd=u3IzVqF3_T4klh)EqHQv-!R@40WWXW^U4Zcf0g>XYJjq@?KQ=G;H#)R<7(in@@ z2@j$_4c4GoSP27>MTn`QjLvcqh!d&v3S5amE@O@@I7GidAXjjmtqkS`a@C$Yeg{hmp(fx$eE^?)(3UQFEYm)S#^??-^1=QE^G;MSN0{XuUNHs^Q*_FWobv0-~8 zuD1PL2ty8$D1W^WRw}u9xsaqB#ln8BGn=-uS6oOdMsKUC+XCJ(0*ou=5N93n-`reG z8=A{1;)qKna4`Rzcx|p*9tSMU@#k<7lJkEU2{Wb*R~DfuE}h3k5!cS+qKIo}zfzvT>!GL54Xce*Zq&7Z`}$be{9yt$nhp_Exm5FRQjTc0xXuODPFI cXr+MPoWQSUUmQHC>pxp0w2#DuGFCZQeYD-$EL?NQ|38BjAy2+x=Ch~3y;VGZM$M6As z8DY-YPTjIwcmW>BNX~lKXJ^L8#}g++Q&U7|z7o+fzVd}=etKs5;r0xD9}EVE`F?zy zXfexlzNT|kRk@-im1*M9f#CV$5ITMFK^v=SJ~vCP&DZr0dMkesM|veujf~h0jRDAp ztM5PGSglf{8%GjfTm_?e%ejm=_PYn~#Ss#Nc_-+Huo(-(+psd&tc6WjR4HuE!X^t~ zS#ILAK^>JhU#XU*xD{FWoNCJGG#7zbk=m%hl?dc4#@Kv7^a})X4$s-jU``9NzXiI?-7s`>YksSDGqo3i=X{0wHaoSTL7)9OiN8 zW73az6>|m8*h0t-@6)!SMAdbYNwBLHBq-`z^nL|j3%xJ~)7Y=z>--FcXx^OMM8nt# zH{5_=`o*zsGR9|ICbL_CA0Kb8%x)JTK+mIjQYdii%z}QSw+WlG5`bNoCRl9P9+9nW zKNmtjhd`9SUkGcp+&o#1V$NduQ?Ao2Zl_PVkk*XeR&~1tTwo*^R?0DEC*Z%exe_Ou z%PR5+OC@kHw@&Pv>z2a-3j@OABqbYvHxp(|8?G!uQ&>6=$|9_t-g{9NVeRxdrS^b~*M(wz7S+$anh6W0<&J2QsjBjtbd!9w)oB~1qg)Cg$Q7QE z6hx4JPzvAvwiJfa+{m<%qK%UFZ@)QNaI)#WTob;>Ar1}2pu-JC7cxex+_^jXh41fi zLxn>d*@%G=10x1T4E#3?_>&yY{x9RYQKol)sT(IzEm1vfraOEL%?@D0|1diM^2;HA Zt_y)UfdzRGA4hj${ZamskZ)Wb{{eUUz}Wx* literal 0 HcmV?d00001 diff --git a/clients/unity/simple_sample/Library/metadata/00/00000000000000006000000000000000 b/clients/unity/simple_sample/Library/metadata/00/00000000000000006000000000000000 new file mode 100644 index 0000000000000000000000000000000000000000..ae25318c7568c595706048911840e429de163a2f GIT binary patch literal 4304 zcmeHKTTj$L6h0_;LB;$1MvTuW7mW|bfC5S)x)FFXhRo7ow`R8`(*eP!{TcokAN*ym z=Q}gA%wkK7iTdE4WVX|tujlgho70wP^eoZ2uS9f`k9;7SnV6h-v^h!NyWQ?lJ|7+? znkx!zm$g;%$|`!U3QfG)6+HhO!K5QTXl*I8(^J%5e_Q{kH|(o4(TgqBD2UzA5P)nr zhWX32rFm*>r-{TDSJ5i2@-7pO{r=$xafHNR!3pLuY|_DSHLMCY&MuIUeIWF8Z7?YLDD6s5`-!z{1e1qj1GhSEQe{6v?+lEZ}gm(Nu=O zgj_x906kAQ^)%!rZKRoMy=bbeq51ZS%Tv(>eoDTCa6zw((=oPFUd9>5g!HP)7>oRb z8_{0|YfvnB!imTtE~nNRs?rmsfvLq#b1 z$-ZK)l|XiQpXP>Is;*mw1iK!gsN(`3RPYVPgoJ=W83z@7lmCN-WH9$~6Afc0+`^x1 zg6WjUy6x8`-fVfSJB)$#a^iWv%x56ywcY2esImaWgpVA164cjAe zz3t~l7;1<_`Rk3aRNxRKV3-c)tB1$X zG`Cgc5w}Xowqp$tj$0rL;c7D*T<#W8rVW1=I@<8W>mNB5vFFfw^ zK%2uD*noin0|N#I4EzrageUSnF1BWJe7vt{Yx(Q8crdq}r1`SSR70Byc~`DxBz&M% ZBYtlM&(k;$el6We^(T1)lZP&^{{U#L#<&0g literal 0 HcmV?d00001 diff --git a/clients/unity/simple_sample/Library/metadata/00/00000000000000007000000000000000 b/clients/unity/simple_sample/Library/metadata/00/00000000000000007000000000000000 new file mode 100644 index 0000000000000000000000000000000000000000..a1fa862ef75c02fb688c86aad7fddd8ef15b6678 GIT binary patch literal 4304 zcmeHKTTc@~6h0_;LB;$1hKbK87mW|bfC5S)+E{ophD_O^UDIyK?111?e}+HC2Y;FM zd}n6L6n7hAqCVJ@On0{P?YVsW&DmX|@v}tdz7o+%KJtNRZfbh!(bhD5?{>RK`FwPg zXd%zFUDZ}CDy!(Z$~Ez7SMdCE1e1>Vp!Jo^&dyM4<8AGu-n6gML@zg0JtuZUBLK4D z80Ih6R~D(hlO_^hTt%z6%DYTB_WOq)#1RsM1t*xtuxSUw)vz+yjDw9iR4HuM!HyNc za%$ixabSUsC{z3pzZ`?0t+Maj>4*=E>AyeDUxrASis?Av!M)u z3AuXQ0eYTr>S<`3w4P?F`J$n+y5`#_E>A@l_$m1k!UerDPRH0zaT#YA6VfXyVtU|T!}!=V~s5Y#JoTt7w|t@8O#ghqC=I!yg)7$ zz*dvx_Ku-Y$zsYk!^-Zt?9pNOAcwX6ZQay)F8i#N%uO~_-VpQ^UJd+|F?}_PA1Xr8 zPYx7wtpKvi`?PJSscO2JOR(z^iaIXvVFlk{Oh^bAlyO+WH~BwUNCtB+H_{Pwy2BV)FDIV&%j~YK_ai{h<2h1ja8+hOztdZU%{du?{glR7Y}g)& z>uo);TDPxOWc9BJQ05=M~f1 z=(Q%)50hLw?s!<94h${b}9=`o;J@oXso@*nW8-4BHK0aA+vh#yxEuZ5}4g(!wj|Vz0w2T3Te&KPS z2ihFQ(1r{Q85lA!WZ-{bAiR0q<60BXNhiUMU;!-1l^oAxj_>36%(YE4d7kLPArYPCGoOeSW@cxe?99^lZnt}!=i}o< zOIfD#HJz)9$`!p-nI>NC3Z8$CVbBpDw7Ht*^K+DJy{~=N+xeR~(ko3>&xqa77=Uaz z`|<0|)e6=3;z;6)t6&vZIhPT~{`mNlI6`7D?*!uzHfv$H8de6Iv#<$^DuvBk*ogvI zmYX=O)2_-J?^I%GIT_+QHu{n=s!jG6)SY6CXJKs7Qn+rZ%i^zEisV}&=5d&8Hv5`@uNo??YrcKr@=S1n84d?mvN3UKE1LsrUF0y zM)a4#8Wi)MFcDe!oT|#`G#7zbk=m%hl?db_*4TVNj0*&E3IDT|!JI%YTU05`3FJxv zY%N-8?HTfwRARmvx$K^+4()dja@c6^>ZZ;z*=I?#Fx^mDL(tcF)$>!v^z|UVuLwmy zJ5tPz0?0n^)0Uy8s_AAX!EOd9>e#@83cke{pAax8V^G1j`9GLX24g2T(J*$x9sJ2A zm`-u5yKY_LEf&YR#~4^ICm#39?7pn`BS6p71yX2m>&$}wpmzwHb2TO&z%CzOdxSH&?40BSh2e9P2 z&qxoV%0H-w!@sSEo<27-ZKQLful?J{Cksw?zSryl&+#UQ104Z#bY5r~2Ne2^kB5Aq z&EXi?h=CCUBL+qc{0|KHcd7?mY}K^z@xHF}oWE|fN0oM}l6X5?Q>m(JGb69dLrC!- bX+t2ty@Zd%fjl@*y&vl@@)jl!UdH?Y%HYXZ literal 0 HcmV?d00001 diff --git a/clients/unity/simple_sample/Library/metadata/00/00000000000000009000000000000000 b/clients/unity/simple_sample/Library/metadata/00/00000000000000009000000000000000 new file mode 100644 index 0000000000000000000000000000000000000000..dcd6262e8b4c67ec364d6ce1439fd61a8a4f0f66 GIT binary patch literal 4308 zcmeHK%Wl&^6upI(M}hKwzq&zURpB@Hzc5 z!aa9p(n+u*SO5!hCC4+F`| zQkLm_UFT|9<%*uGOcSqm1v5`*7Y&uxHQzpQc`CTT4at?@FX)wVI>dI0%Q(XrpI%uRQ-L3U zBl^o=4T^bBn20QVP8DTznu|cJNNrT$N(6EqYivFs#svbofdARbU``+xEvgje1aheW zwjQmvb`AMTmSesdx$K_H4()dja`@2R(TUD7*=NmYVY;ERhM=$Ts^_PS>8n9}UlEFa za;TVV1&}@7r!7N?s_7(?VAlf_b!^~41>azdPY4*4F{t31{2$CGgRzsFXc#-;7XD-t zOs6>3ZMQD*7K>xuVGOL76Oa34c30N>5uoSs0x2}ODzl*9>utj3oDRTlNE0kJY>&wH zwx1iJuOSfSuQ$R${@5TCyyoJewmoYy80M*Io literal 0 HcmV?d00001 diff --git a/clients/unity/simple_sample/Library/metadata/00/0000000000000000a000000000000000 b/clients/unity/simple_sample/Library/metadata/00/0000000000000000a000000000000000 new file mode 100644 index 0000000000000000000000000000000000000000..c7d1d464ea9d0e54b3a43e4630f23976635e9835 GIT binary patch literal 4308 zcmeHK$!-%t5UoJM5+LmRmIDV)fh-^n2qlmNB9UNWazZF-XFB$PJ&t-h8z+ATpOY`c z)T{1x+F>R_NWcM?)SjN{H?_QZU7jHtJx_FDpNLNLkq<;O6O$89HYVwNx7$6==flH9 zb9t`qvbJhoSw$~Zu8CK>g6E%Om~_MktuAGDdWu?W?`og*x_y%-daI zFn_(eG*9)dG?Dn?Dq6)|-etnEKR*5>j*u8EIKe!IO*$CvhLypl9Bjm)N@3FucA@~5 zTa#vW+Eli&qFRoYlQFL2qR$zl_Q?H$x>Jk^EDX&$3agH~JpHPrNPZ+@0f&?IhB5>u z0-phbo16fm|to zEhmfZEkmJ_`IH}qmECjIqr>h&4j=Y5byMfL?6X!fGu}{nL(tcFHSkl$^z|rys0c+r zJ5bDx0?0P+)3%|es_AAf!EQz<>bSs%6?}^^At7K;#$g5D=4-H!4CY>LqG9ZWJGjUu zm`-u5yMA5b%@)VH#~4^IC!Y7q?7pn`BS6p78B%C)Rc1lI*BgY*IUa%iltx%=*dB@N zZ9g}{P(vijUvGq!iZ#y{l9aPp*tI&#({}cP8)?Pp4OMenzz0Txai<*Osw4heYl~@9 zb6Z6oajOIl=ARS$=Dy`|z``7V4kszO_y?IVW7=?M5t`!Gc~lm0?>s7txOWDeS4?ZI z*P2j2OmgkG<6(WGd%9ZqI9sflqW;;hnYdv(PKd^ss<&y)D6=Pjj7zP}wqZ`n^#GQ9 z_ZjFxRQU(>u>ZI9(9`E?u8nkV^tFHc_sN2jogXx7`5bR@80ZMQJkWWeWeh0v8;^%P z(B?1(Heg`Dz<_}P1OEd9;a%tf7h5rHe7sk+wfuFPKU&dtr)|D0t4!6knUJ^TGETw= bTG{&VUdLx-e;&wFZ>M@k-ooUMmoYy8eUQkw literal 0 HcmV?d00001 diff --git a/clients/unity/simple_sample/Library/metadata/00/0000000000000000b000000000000000 b/clients/unity/simple_sample/Library/metadata/00/0000000000000000b000000000000000 new file mode 100644 index 0000000000000000000000000000000000000000..b258dd471fdfbef60c0df96080247e11d033dd02 GIT binary patch literal 4320 zcmeHK*>2N76upI(r9j#Dt*=O^&;`T;LTzaal_*4nJ|R?1>S3g@^JwOt0k2yT2z@PUhN8=e-2?%h!0v{P4n3qYHz%1yw{ug^ElEgiE3uVZfFER zHXQx@+4|}dHFx4j;)|@TQ0#u(4S$h@VnZmG-SPg;uPM~DvsJ;IK+aoKCCmxr zLJ4dwTIuW<@|7&b{4jFaJr^C??;hmvW^Y?3I?H6AwWGPomdaX!zQn7ZpDLy=2l0JH zDEiU9Vy=`xc6pz63?-_elT3nL4Nz3rzy}q4jWIqUU{Jokiy=@V|GHKVsw!)^f=7zu`*a)hf6_-}8l z#EIs%iaf$r2^`ElC-%*K%i(~9S^g|eQnK;)GhxQG;m#s7g{^Z?7GduklttJ(Jp7Cz3GYo@G!_G>0=n3fZw38v~r+%U@Q$sgltd%I(plWIMH zCD(n1dJt9qK|Or^+j{8fb3M~WIyd^-zy14U!O70|n*Ge@c$33GM<{rp^FqrQQ0NyP zcX^=AVGM1^z>t9<149P>2L}9`&K)kcW;*zIuj@SLuiNaNeJfquiId1*o03=N0mS$Z bwE>XdTEe$jNj{vj-i`GKc_WiQVaELcaAwT$ literal 0 HcmV?d00001 diff --git a/clients/unity/simple_sample/Library/metadata/00/0000000000000000c000000000000000 b/clients/unity/simple_sample/Library/metadata/00/0000000000000000c000000000000000 new file mode 100644 index 0000000000000000000000000000000000000000..131233636f0a87ff69619bcaefa30d178198f824 GIT binary patch literal 4308 zcmeHK+fEcg5G@qEpyK_0L;7y}9@iReb)$r#eh^zM$?oh3aDf=~Myehy#e zTBo{u>BSjhOwoD%ZrbJ;C$g7&={9gVvWbJ2Oq~jrXzPvzXYZjk7VfTb#x@#)R<7(wKMTn`YjLxhG#EH~-1+GLO7cs{c9HL(!kW0AERtEC|x$ID-FfWiR z1+bN5sk3b;WU`R*!?3b@u6lIXJ&0j#Z%emyp36RKC$p1Hl{W=_jb{TtWlUd>{D+K? z^s@uS+$ezT@ILJrYN?uT<>KsSgrcrZ3&Ei8;e{2&7KJe?(l0=LR6=nuM1*qoCQ*mr4+#fI&X zxZ3t}Aq+W0qWtwjSgl&~d@)Hmip5>4vpnr&FSw9ajjpSj+XCJ(0*ou=2xlGf-`-eC zTbj!%;)qKna4`Rzcx|p*9tSMU@#k<7lJkEM2{Wb*R~DfuE}ch35!cS6qKIo}zfFQmzNE zM!yYCNEyb`~Zu9$lw3~ literal 0 HcmV?d00001 diff --git a/clients/unity/simple_sample/Library/metadata/26/2678d7ad7ff72d248854d487d8f15c21 b/clients/unity/simple_sample/Library/metadata/26/2678d7ad7ff72d248854d487d8f15c21 new file mode 100644 index 0000000000000000000000000000000000000000..f3f4e722223377e97ecb73bcc6c244e7d967923f GIT binary patch literal 43889 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 UcWffoI85RrekUfs2^4_;4~p5vjQ{`u literal 0 HcmV?d00001 diff --git a/clients/unity/simple_sample/Library/metadata/73/73b3c5754a89e43409dcf23866eb0484 b/clients/unity/simple_sample/Library/metadata/73/73b3c5754a89e43409dcf23866eb0484 new file mode 100644 index 0000000000000000000000000000000000000000..201f2fb774da586f446d434d1abe8724deb53f2e GIT binary patch literal 29561 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 literal 0 HcmV?d00001 diff --git a/clients/unity/simple_sample/Library/metadata/84/8401f7b1211481b469ac746534a896b8 b/clients/unity/simple_sample/Library/metadata/84/8401f7b1211481b469ac746534a896b8 new file mode 100644 index 0000000000000000000000000000000000000000..2c34de4be21b1f3bf68391a5ab980f5459ef3fde GIT binary patch literal 7713 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 iDgN01jg1!kuO)+q7X* literal 0 HcmV?d00001 diff --git a/clients/unity/simple_sample/Library/metadata/d8/d8595cea157337845be980bcc8978623 b/clients/unity/simple_sample/Library/metadata/d8/d8595cea157337845be980bcc8978623 new file mode 100644 index 0000000000000000000000000000000000000000..c2a75d82b6f89721f0a8d1c6bc061f98de8fbf1a GIT binary patch literal 17925 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 KWB7g$g8vJ@_iRr9 literal 0 HcmV?d00001 diff --git a/clients/unity/simple_sample/Library/metadata/e4/e4195866782d0214cb59abbae44f068f b/clients/unity/simple_sample/Library/metadata/e4/e4195866782d0214cb59abbae44f068f new file mode 100644 index 0000000000000000000000000000000000000000..ed727e04d3bbf294d0cee56cc2026e19ffc54f6e GIT binary patch literal 4288 zcmeHK%Wl&^6upJEKzYC45D@D^A0QS8wKOes(GspxE;9FR*BHVLlCY=@=u>mBMD>)u}j_+&E9LGdMLqtbD5Yaw9^NDDDcx3oyeT2Su zI-T8o-QQ0%nPobk)48guT+uz1Y2w+A;Q41425s>{OS4HnHcIjG!3?#m|@@Darbs2E%$2XpcBP0fMPB8XiBL;@2VP&vU0~;`? zQrMV*4Hm$%JPnfut*N{@uVT}dJwC2&qEDu&+9dOf*6n4C>q6gzY2l)2T^7F7QY0^l zn8V>>wW(4TGd~Cb8jDw7E z!OO}xw!MtQ=4RIuE`=5@rnXWPsv$2%F1zQXMZ4XD93E}1=}2dp?6Wu+uQXNG6!a;c1wxLA zV#1u}d6>gtjG}LEG3E^JvH6e<-lwgUBDJEUOoE*?AVE>vpm#F(obQD(C}Sss&+|PP zqB*m46Aoi1T(A>@X&1-3$QYM#8O<(veq6lmG`n1YKznYDlY+o4au@W1t`jzA#RJ%_iUw=51=7!VF8DVg|NnQ+H+%E}^b@}=`vS@_!NyccER zYp26m#>C5AX+r%l$+d0HJNXIqG_~+~qL`mW`njDmzF?Z(5e;&ys=OxaQ9c{5wNh?J zITg?#D?B|a2qFI<6+ZuMDs-v2l<8DN86b?tvdL8I>px1$32mbpG%)fnAfBmI0`RU!q_w!$$e#5tpeD7!17j)dp n^;8t%b$JXb}+*V~#E%8kR}a9-dxS>CreEqev0MKb&+k^m1bQDYN$ zq9+500ULsO+TbUnB)`SG9DF6>O8e$%A3qLDHUpSKGQfDdSlH?*pN^dmnXtA(8$9hJ zEEQ|3u8=C%;+&~~kZpDAo`GkDI7?x1p7rV2dD&3U1rXYyO%N>-#iJ~ZwHrTQ!FmQ5 z?09bcLIsD*kQ=`kz?FCpcGiKp=KYd~#c3VympvR>2S%@4?!yP3CJqow7$D>gW3GSwhxzw?E*26oWEh23>VM-O@KkGxsVV8a# zFwTc&mP+arF8zi_2SWfy*@xaV4>cu+D1<_J)R09cC%xrCPmjYwy$zUq3DxlEIF@Ch zngK*1)D@-ppp)zu#(Kv?*U9znzmV&kM<*=T`2eDmWeKFFb!A-6W=ym}%R}QD#|bDx zs6f8KbEZA>P>Dsi#1f0?{k}`=+BOus-blm*Jxr5=d%=A|67&D3?|pWtfC54f%UQ$b z49u^eA=tcu`2{lsyJ%p3y>u|U$3v*u#qRp`63v3TRMRO&H$Kj$paZ(jJHH({}SqCz8WqRd6p9YWU@|PK^gwKDAponM|Xl9mJ&}Gzt#f zVt?nYgScpLFogOr>mYssMFgyVfwbeO7U854JuBgoilisOXR8fFkXoWLL64v2~=}-KU zTDSFBPMtuAK{cwqT(yh>#JL-WsaDJ{p>@2ld^%or%KNnvu{g@n5~`ADo=Xb^DjCnW zzzQ5XHC=kCCScgwDLDnshDVL{!7!81a34NwxV^;iwtn>gVME8LpFEH0%`Dsnj#HB( zkDojpt|+8MZbJLw&`vQn_iBoLaEA>WFm>Ji{U*-3=<&}TT3h%kclZ9e!%?xunsoQ2 zj9FtVOqcfxFh5s@1I$m84pHiIz3#r6E4}nl>h4{ZbkdNt<#!fp^ReBOr(J5WrEc>TWrBl!W=pMZfB-0?a*zWsIK z&u_l_`s(-18%^?C>o0T!-CwE;x1lteZnPDJUk0pm=fjl$+b7stO#~w34>0mb!Ji(q zy?TvBUwkw@WtLm}D(8dNa+V}eNa6gXT5CMzQbYx0I~Do?oqh9NJ z)?1M>la1NsY?Q<_&2nnrm_<s6`nG`?-SJhR0G}gVsOk?0 i#e|2xi-)`O%Ukd-)vy&O3FH#VcLl$r{aQye0RI6x(zwF_ literal 0 HcmV?d00001 diff --git a/clients/unity/simple_sample/Library/metadata/eb/eb0b853da2a60f540a81dc515bab1875 b/clients/unity/simple_sample/Library/metadata/eb/eb0b853da2a60f540a81dc515bab1875 new file mode 100644 index 0000000000000000000000000000000000000000..a6472ed086e86a1a6ab012ea152b67af4da34469 GIT binary patch literal 4284 zcmeHK&2AGh5S~IQrTqUC%75Ua959`0Of}rKg@SsW7%{#I1JkyIi?(z+ekFO4 zxFu{JM;9v%p@1sEPvhpXg$P%Mri$xvCX%}ik<}$`AG_QiJm7}lmf#=QT*iSA+sR+X zLB#mrMawu8_#rG=?=lYCo132Kl4;>{stP4D!vwJ;wNVLIK#-#}hvoy)IENs|=ssEz z%n{_cMHRvvK~Chr7NWUkOMzcWCC1G#e0oM5+MgcE;c&(w*7XFl7iZ`U_YJD(L4?9wszn} zGp#LYsra-Km;bF~4&(Mwc_PP<9skpue5Xe<`_$wE@&~Dj^`^T2J!)bwKJcEZ5nj_v z95oVx1~w91QZs6$OP7b<;B^TbQHWaK`W5I`pkIN01^)XAe0u-%>y@={vv0?~jDGm| z`U!m!@%O&Ix@d$lA74 A1ONa4 literal 0 HcmV?d00001 diff --git a/clients/unity/simple_sample/ProjectSettings/AudioManager.asset b/clients/unity/simple_sample/ProjectSettings/AudioManager.asset new file mode 100644 index 0000000000000000000000000000000000000000..947df12d092baed85c5fc8a4c2cba6d4fdb7398f GIT binary patch literal 4124 zcmeH~OHRWu5Qe9`5gQJ`A}6R+9&1F2Dp*uSSg=JV9#;W3j#7KWsu$r1T#+yn%c!i` z&M%F|&ipgBzg+-Ep8%(40B}s162RqnGQP4C`0o3DMEetpn`ml3*Nt9c2UER9;Fc_Q zu?{Jo?wfFN4y%{N>l;?#t~NMxdbx%@DrO_+ytdBkK>la%;tB`b4wYGhvJGz+VIY|Jp2@4(7u^E#PJ-?k3BVy3I$yTQEARnoRurPq~c zb#$Si1N1v}&AmytIY=#kdg_LsSE`3;v=%#6eyUZF!W(3aN`qtk_g41+l53^r6s5je12&S4h?L#z~CaYh*i7Zdd#U z{6;t3B0hpGKf$)?jC~DBn++>A9?91p&pE#1Gxov&^XCAMF92YXdg=gPudT1W>8``& zcs!mX|1GtwUs{>l78ckO2DZ@(pzxUSY>b010Qaf;&@9}>D>ywqIQb-Uwf`u`P}*#CiSo|iP`VNx5abp$HV<1^g?Soxl|~06zZCmyG0x) z>&my1Te74;QXnai6i5mr1(E_ufuulEASv)~3jFxJ^8Fg4{_X4Y+RKm2HGp6BrJpZ0 Q`N7Mtl2vN_;`yI;1yt@b5dZ)H literal 0 HcmV?d00001 diff --git a/clients/unity/simple_sample/ProjectSettings/EditorBuildSettings.asset b/clients/unity/simple_sample/ProjectSettings/EditorBuildSettings.asset new file mode 100644 index 0000000000000000000000000000000000000000..82383f9954cf3b208be6a9f2e13f885ef5929805 GIT binary patch literal 4104 zcmeHE%TB{E5S;La6BmA?QlZ>SB@moAM4XWmo7N~K$TmoD%8&9Zgxz&Rd*~ZD1LzR69A`_DFL&|baMSN#qTf-1@#vPz^(PE3yTlm*wUrs+hxSUL@_3G+$@2$IQ3{4Rkn3aR`Sbq|#3p7yHu60p}g>c058G93g`9fY< ze1DsVFg#Oc@#w#u=&>fpsKvF&z?x)4>X7#+1kz`ks_PoK)>MtNa&RP&HE5ojm;$+h zcav5^bi9q}ci)-q9{;_V@4hoVhs22Ere2wlugtq=a=u|&xBtxCvl71_e;Vq5I-m}y V1L}Y}pbn@5>VP_+4yXg_z#qw`SUdm# literal 0 HcmV?d00001 diff --git a/clients/unity/simple_sample/ProjectSettings/EditorSettings.asset b/clients/unity/simple_sample/ProjectSettings/EditorSettings.asset new file mode 100644 index 0000000000000000000000000000000000000000..5e1df7d31e964994a3637ee8e2b030eb07d583d8 GIT binary patch literal 4164 zcmeH~y-ve05XZ0O8y22|F;yunOnfw`NFau&Fd{cGtx;lE&P64i`X;;zPe!1htvB9}nZ z700u6`LhDpAveC$I5>su<#F;RV;reO-ll@GwrP?Jvaw(P=V+-aC4}!NtrqE%w7D|+ z#%Q!Ajf(l)SghBp*IB2oT!|}dMG5Z9nzkC{JC{yd(go(T(yKv9qK zPS~0eN+YR^q*WqSOM#^E!6dHYt_$C6in}iUSxzDu7gk{zW<^@3g<4EfnbcbLS~53C z+LA{m$FWUoAp6ba&vqbmvYT!E1>~?%XMHZefgH6&@K6&F-y^;*+`M@Lo`5Id33vjY zfG6Mycmke)C*TSEGXngC9ID(sNPo1Qke?yWFM7SjVi9CzVltt05Sy%*l~a+)pwRT7 H9V7tXi&u%F literal 0 HcmV?d00001 diff --git a/clients/unity/simple_sample/ProjectSettings/InputManager.asset b/clients/unity/simple_sample/ProjectSettings/InputManager.asset new file mode 100644 index 0000000000000000000000000000000000000000..14964590c1279d4e5c7d1f0af38df2c00f0338bd GIT binary patch literal 5252 zcmeHLNpI6Y6n&NOv#?8u&^O-_~Qfg69U z{3XJCGoE_vj%iMuJW}#z`QG`)I_qmFOh-eCPT=&(5%x?J! zHJD&3+)=$kpd=aYoHU7u{je!TEwh%s*3lGY0>TzW9g}mISHHT>M^RL&Lu1l`x6Wd% z2cGgqsHRv_M5?F36EF7L!te4uVJ9s(yiVJ z>S{-ck8D}GE?ej_T~~(Cb=Bf=>$>JZq`FujmiMRZy5&$N?Zyz&ZdyEUX}27ROxpYX zS-WjHlu5fYgtVH)UfmjP7Ca4*+t}l9O^SNiCD1DqXs=--9LGG7A5+16uFk}xL z$kiwcC<$3xJva}`5PsO@u~3*tHb(9OXnrV2^xAsEe5~j6lbUJVRO%Jl*K;NG@z9W<$YT)v63s8K^Q)WuVGHm4PY)RR;c725|PmA+jFDem@EY z3$n;~=?nOpz!^FAo9jYayvecDHl!t*nTf`JyoAM?-S86mQNDlrUd9T}Mzk5?$lhsd zKKT(s@oq}{FFxp4@MAuyaM>Tu%+Oi$L~P{aG~S9j39mhqz5cw`*q_h5bkA^36&9df zamuq0mNGs>KbUVCPFCCF^I9rx86P5-^C4evJ1v>1tU+_qW**O`WUrh9v6fUWKIc4K zgWtQmuP|@l%gq0a%Oy8w`x_3N%ys+~FOGuX(>mwoKINPX1Dnfy7AmXNf~y*S{WbTR zX!{KY#vgrGU1Gl2_Wb3Az~5YtshMIO;yUGFD3JyKy|${pHK^*#c+2mR;Vjmni!&eh XV9sJKx;XQ3%Q;>3=;F)AEa&?RumY=< literal 0 HcmV?d00001 diff --git a/clients/unity/simple_sample/ProjectSettings/NavMeshLayers.asset b/clients/unity/simple_sample/ProjectSettings/NavMeshLayers.asset new file mode 100644 index 0000000000000000000000000000000000000000..a337582595ae45f01e57e70a0cf2aa79da5fc3a1 GIT binary patch literal 9196 zcmeI2_m>n!5XT!(F`$Audw^L%?#QNF5D}1|0%FGDZVwjr?r?VxJq)Zl=d74>&N=6t zbJpMe8$7GS;CHL5>3+{&?f3Skrsq>Ny&qz<@vU%j# zj%M|DUteE8+CP(Cv$GYmiq$1Ev)*E*swQXEqN1aH8rMT(s;<;f+RUHcRU6%+Iv37a zw6xe(n^tNsPAzAPt7;uOXh65kW2`+Tt7U3(PpMoRQR-?kr)wHzPSu~X^vF*&fZ}Sc zQtDc)y0T8Y96hIpW(L>oc2cF1^(y;UFF9X@W`-1$(sk$BC09!;i)NMU(wrWKv7u^P zl2uf@UY?#^&&?vyQSQ!as;#?PGergh;zCvGs;OdosWz{7xjobR01a_*%ty2FLH}H4 z=oM)7l8+4yv34ID5u|&TeFc-rCaiQ;G7l2Y+*w4tWkQH*V8)GCFyAu<0u?N(VUF<0k%*9@SxX^d8 zH$W*aMw{=8eIP63VgzF(7bA&@x!4!#$S&w6Y(`#5?=Tn5mM|xCq3@yvpcEHljEm8b z6>>3#F_Me1#N_WF^nEc7>c}p}3j}j90T37ZE+zt$;$p0Eu^(iGTrsKx`Vy>Q|fdq3g&k}YqF7|rQ`2eN3m}p!a1z8~%3mBtU z%3T~ybNM?6eRm!Mbu_C-ql;th$z_u8a#ABgwdk7$ZV&3v!!rG1QS|Tp|!m#-)I`(3f!;KuI!e z|9Ls2g=Ad87)i#J#KdG=1$AT@R|^D_aSb3Y^krNNP?8MWfL;e_AsN>*Mv`#@F)c}$Q76>Ne9Y9>@%Xk-{BpJ2?eGk$?GTvv5B;x~OVlqC2Ip*BjIRMol3_d0Zy+rs z<6Fi^GQJ}wCgXdkBg^bNqkjVHmpBH}?37|h)>GEcC+e;J>F*$V&F-!>Ey&8t mvPETj>{V~2Df1sCX7qIGhb;xo*->vDkcY(mA8Q%^-NQdYu#0X0 literal 0 HcmV?d00001 diff --git a/clients/unity/simple_sample/ProjectSettings/NetworkManager.asset b/clients/unity/simple_sample/ProjectSettings/NetworkManager.asset new file mode 100644 index 0000000000000000000000000000000000000000..758bf35263393a15b533c87c7a01340269030023 GIT binary patch literal 4112 zcmeH_Sx&<+5I~2r@BQQy6>Z@UAr)0El~^K`ej!x3&7=gfRJIF(dvF*oN0@P9h@whx z0FUH&dm4LQ3{d+7sMi5tn|kU1P8!X|Y0!kPEX!7C{z2^q^=m4huSFteDB(gV1lrD+ z=U|RwjoN6C=ynU@@$KXZr}{GVu@{M%GMg6U-j2gW6WzthVs?cu7#Xm}=_oA3;~+`} zqeD!5DKr{zm3Ju0U@Yc@b(BJVmwFNdF)`QW>v7oAx$j6R-ij}mv|icgiwyIURQR5s zxj}0jHV=>IB9!0@E#Qb|o4iC}3C_|V4Z0A7QfXs)%K*Pf$sMP;KYlRv(SI>vGx4NQ zY_MjI?c~(YfmN)PW4nJ~?Ht=%f_a{nXMGW4{$I~Q;WSNr;5zmzd`Vh7?u8Lj7FL>+nfaPBr?mrZleArmp|Rtw*N)Q^Tv%}D!JJ7c^3I^QSnljeVKe!UsZya8L*mJ2NFsx_8n9cWowa`0L4%m^H<4$8z_apxH4NNpISgv9Cql|3s|hd%0wmXut*WTm zEibM(p%DI9=n6l!V>j@rgw+z4T2GW>JDe49NzA#9ARyAgl+ZvKtxMpbC!)d7Zq{8# zGT#^TA?e}cA_}}#N@72W?E%}4BjD|VhKNNt5Qng9Ln9K4#!83IHFvR!>toyA#R1D zzjRg7M2f923PKAVb_D52EfleFDTg$s2cXRjm#7|&WH>AVQ;I9wab4k#l386Wc0zj( z!v31&P`N`v95sWOia(mcEo&_mU-JSxwic+^V>0=8EAwUZI98M2^DRud)woXPj_ZQU zn;!U(aA)f=;g4Slp3F~)8PYgmB^t7XMCC+-N@IFl_*H>z9UV;OPcmZjPVCN!V&DZ~ zrD>~=`D6{8`jy7?=tOFrD(e(8bTSg9U44B7JC(z7@&-NV22rIR%o7VYUL5wTu46;3 zkNG2kUB%B8JC+A=Z6%|&ExWlDSUAmKq3T9W=#4uaPRX^sK$f~zqeEV>JujFS)qD$x z2GCiGiJ%;WacH|Sz3l1tLvgYhLDyai=6y18#(gj`0&a*LyD7%00pe$N=KWD05jDyG zER%LC5@VJ0wQ-EV!p>d-zP`WU#wF?GLaSC&W6?QFsPu0@7150AOyOLvkdrr57i#nx zjs{wuC&w@%bskqxGAV>Df7mbB&YsyYX!%tFpKk(#SFsPQKtuEdvkt>NC4BuPk@c}T z5r$BaYlq80b?s;?avdt+LWSy45WYR*iJ_?q4!Ti{<0E1&GU1^LWcV-wtrU?Ln~*rN zG|Tlxpdf9oGa*9(gBa47a{X#BPi8MMfq}rN?c|%y3bcN))An2#-;$LCRnKK zas4rWuslfx^eqM5MqbI!!N@6tm;U9^+g%?946?m`rD$x+6CpGP>}k-O8)+@OClvS%fiD>zWe3aENs+1$s$r_kUW(SW#+m~GZ*()ckxSjb~R zUHa@x!`cWWMZ^uQcY%ar7!V36+L5pnTK>p5xf9L@@KI zw3brH&*VvJ*Q@H(&ih7!qTvV~SKplHHK z*-^N8X$1!q;v)D89ngRnBlVZ9QKS!ZAP5~X?8AiK7cun04L70&hp#xZq*A3+w8Lsf z#WATALji&N6mV-oyj9i0syxF1Wk z8duB78>|-P&2yNI=!MkgQkHdnB3$Y=% zG=k6+USP@{aH(P5V%EYywiOlZ5SFT-Gb8vOGkn{E8;|*w7If_@822<_eC5_~YPu3H zdNPb@Xu#Rk3*}gt=S6iD!{ZW$pHVd}VFV19d}z8QjHU*sr!oZdG?;N#vW#wJ7Em-X z3K?!GMv(@mXEXudfr(Yjte|LO)nd4%Sj}m0y{znNGNtZu(>ybPqKVJ~!!1Q~@A*ir6DGIP5djSTFlYwp#s2hF2nw4Y(sKj;;EdM`@JQ7_Z9NE*2x46{mB6M{||7 zez1QGVDR1O%60i7odY};@-Zbil)K}%$KfML9MMA#ChK;Tl6$<=AQe;m_5^0q6kI-$ z*}>v5b(4FNeAq=U+iqZ>QEUEk39exKK8(xQQ$LxhqiAX^Phq%(h_0u8ss=X)GY(kW zZcGv_o)lL; zD+5L<*{Q-E@GPNds?BFJJBbs!Yx6l8MC!hd&z{R*DC!73Pd!fxVl|uk?D-ixc#EY> zxpBRMn=jZ}{%rmvWS2H^a)9&{78V!OXTyQk5qB^PfQ2(_Itwgy-(3mbQ z`gS7&e;tSCFB%zFv!=c+cQcf!Q-2R& zmgDnYW=GHGeHsMz46uGUE@qQ8g!eO)5);+{9EAO9TH8Q>e}F^Vl47=IKM0uRsDFsr z(Nq7h29bOZl2kJJL|z|ZXp>9t1k7^0KFaLqd3{WS= zq7cB!2o?946)24cxJ*;_T5`SOvl&RQl4t$f0fh=kg`MAP>57 z`i}6+kdGewyTk%*%;N|1RS74&sbPMN*)#QtUuSl(Y)swE zz9Ao)n8D_MO6r>oY9jS5z$7neBK2)%M^EZI8U(g2tiVA5@jr~Rz>F3rzss;nq&XX6 zVY}E17Ud2gtgHkrSVWWujlQSR%Ep9fflv8p(s6f2kwsKpCtSYIaLG&RqQf6(aP(a) zK=^blz%19we$MP970})Ef1yEi zxRpkV8D_s^cvJhoX9diD#q8*r{aS8-_PA`|S#t{f^nuGyA;; z(P7rv)lI4Wfhm}%{c#1<{>1F)sr^}l=uoTRsg9J@Ul`WJ>aQzc^*3fm&+6|QM2FQx z7&Pk;k2D%;NcsnZn~42$1;qZv?C6R8TZ70FE5i{87@1PH{fFt8*!_0}?Ec5>=-J(? zL10G*okk%D;$mGmdq(YriajSV0>*A`yF4MWmuV_7374_QNgZBs_Y}RIDlt{+SM9_dZ+X~JUGor!`d1KMpKxmzowUf(`a;j1VQ_9WDari zh;5BFHhMSb_TzX7hl43i3r?lLwj6|EB~gPjGnK{0OyJ2G2BG-C0pu`H-%z@|dIZCpzM&%llay$RqK;yAl$c?5v<9JJ1}DY>3Wtwj zcoVZ@0fR8Qa(bT~$LuIE!|ZqsLc@$tAx~f`CUPeN24Qp=$eqOOC^19sWDSCoD~b@0 zV!$qcr(-;Y>6qA^3K)dZWnlLpW=Dw`cBg3&Ms`s&AHWO`!>YAR&&2R_z#xn+1H&_z z9VKQMo~c0?7*<;J-wQa>O#IFV z48rI#@VkK7QDTPQg&G7-9X4&Ss7GN9a7Pg5Yj7xnrY09LJs?4ezZV?N^sw2&9HAss zZ?DemT+CJ5@&&Tpmx0!L zW=Dw`S{pQoEG;;h-=VgVDVV5j0t~|FGElpW*->JK+T|KVmRhAjCy!J|eg)GoaoY?S zgwbW-wuRYIVussR4Wfrz9Zu<`!{3!m!^G_>z#xn+1GlT09VKSCh zlMiPj+}WXyD9`jv3=4ok7+nU2MP^5d8HObd0)rj;%JDO#XA zDIrg<HqbsNH$aXM0O3YN=myi%kp(D9yjJo z7gvn=(!~>+e41lW!{F>EBawXp)SYAolI1AcdcwfBXg6&-N$A3w8-^e|Ir>iN|Lh<$ z1sH@8w5_k3UEB^}F?G)(uH%Tdw4&NhXWwae286d+I@iNPd`?$RPv-{Agp}Y=?w%st zs6mjQ)r1AJZ(`-oIYD%OcNew!adDtDG9TPYa>ItrCFQo~at$r0$^HC(?h^x(L)bKs=aYEoOm^a=I z_jqX%&MFh=R*(;a3+Ai%pQ>te$FdHEXORngv0^&1@dxgE5;|bDW!(waE-;$d#9wTy zm{49tNoud62U12JNkXiY+gDpw=eh@M>r!I!c*t~u#yUlO9sFBv`p=%I+P6-gG~W;8 zgdZ!Zf2^p^m2UELUvzruV?Ae6_p<{b`)mdIKOTO%1^@s6 literal 0 HcmV?d00001 diff --git a/clients/unity/simple_sample/ProjectSettings/QualitySettings.asset b/clients/unity/simple_sample/ProjectSettings/QualitySettings.asset new file mode 100644 index 0000000000000000000000000000000000000000..4a262b3a2bedc361a8b44f509615082850ea9b94 GIT binary patch literal 4716 zcmeHL-Etc>6jmtE0tMRgQ(FE4wB_fbPz=4Kv6H4@CNnX0OMBN*cI8-%cIDA(L)@!e z_JS8ESA7&7pnau=^Brkz*=+Ivj5V{?&wl4SN1vqio)zNsYeHNwLWnnnI7gKbKV83Z z{paBg@$%^CXodRU)Ad^|jrNm)@?MvFmFUSz3A%p-0~BHr;!ucJsk;Ab={rA);?d6T zA1d=(I#-)Uk`-=(5e0SA)}<%(dhMJleRRd(R~QVoV65?!k}gDp(KlNV(08m4l-bsMBfoBI>O+OM60C@9z*Zxf z+dsp4ojnnAS5?;3UfYrh-#!uCcNY7h0l#x1cwJVR%vA{D-4^K3SlNWSp(`)TEUaDF z#q(>2S?wBC<_{Dk2(0H@SON6vz}HTt8xd=Y0)G{V>6<&|X5p)b!zcYQnP;ea)ZVFIo_V9MjXTuUsR*h8oJ+OdphZrhS>%iNkg^z9P(2 z4Z^gkaV6!6?XlGH`2tT@Q$%EmdJVO!JTK0*1rXdWF3#69)`YXN)*j9`2@kL+^MZXF z2B%EuVsBO|vt`a3?7IXKn_M-{(J>?j{^xKl%Tj@*0!sy!3M>^^DzH@G|E>UXX5_HQ zQ8($`T+vHhT4wJ_C;~@f|LdYHMqDFe`dDNx_I|&D=(fuXPzd9LtF!0 zjE$PTEW)mh3u9^NbUL@tUyFl?>5jEIeB)|3LM*GjP=|3gAwb|fWS-c;hZ50KlCs`m zjSnZ#FXaq8fAtzIruU|N{{+4W0NqE^11xke2f}=F=Z^xQ(v~14^xPX>3VrfP1(e dsNGpxYi`5m!`{xr&dndVkG0eN5!+!t{{k3Ffdl{m literal 0 HcmV?d00001 diff --git a/clients/unity/simple_sample/ProjectSettings/TagManager.asset b/clients/unity/simple_sample/ProjectSettings/TagManager.asset new file mode 100644 index 0000000000000000000000000000000000000000..1e809a75d051476074624f88d4aa6bff655b6d02 GIT binary patch literal 5352 zcmc(hXHyeV6oxPME-3Z}_KGB-S_4)TD_}3I5JD7#CIJOo?EF-Jh4GwwvNI>idnWtM zJG1QO-Y4&UxC8I3bIq5WYyRV$TS@m(y1S0HSX<{r%>6BuN)7b+CSAip`bLlq(y5&5 z5ArETOC@G`Fyo5OwbE@iHCC9;xk8Z6d&aNPyuUBVy)Tyw=A8WGoJHmJkm1im1KC0% z?(&)Wlv_fd7t_VVGb`jdU&v*$X*V7e0>2k?Ji;8lSMRm7yv}P4SDiz9Eu%Fao+(H6EYZ0*b}GSfj!%G2W=2*anq@#Wn&0 ziY2^Qv%)R0O%cR4s~jx01rSiI!;5WIxFxnNg4lMIgT;0L0*ZBdv7HLH#CAmx+pTi2 z*d9PYu`VyxqHs&Bm6&>eV|!H&7TX61DAw)8_AA^HI}kzapvu8whX7F)8_83BNs0A% ztHX-rw&!E1F0mst7amtb5|`LfVt9lcKUbF6F`lBKiCU{(Z*^Qy&stU|RF-AcrgC^+ z9+g%nWwMS{Od7vk!IoBxnDAG$wBjlUYb5|tdss2)`wj(LTAdNJx>OF<>IMYRlD6+r zu%*=-LF<&t!CI#Q0kov+&nVc^IvYXjoXWvk=K%qu2olAgb)U`vZ$HS20!RykPf3Lt=%v^>4z`Qf9AvVC=J4G`f^itkB$TGwceN67JW zWkFo$DH@spTGH`@!g|;`ts5%L(&Be>9(vPCty=x{USizRo2r=O)SX%c~4%WI4h}zSNOUpk{u%-1dg4QFIgS8$50%%FgKT)uy z^)!OkGnIq2o&y4CNz0Ea*wPA!;jR3Y#Q%veR1Ve}0|d~LmLFHJrIjM4p4NoQ!CGlR z04-_xNd;S4nFv}hRSwpA1qh%eEkC7TOY3z6t*pwyTGN04TGH}w6l`g|ji8lNIan(X z2%se`Ur?~6H4{N=R^?!=cYpv|((>;WY-!C!(3)2{SnC5IfR?oUM+IA2pCV{|RykPf z3m|H>64LTT1zTEQiQ%pMmBhXEP32&%?|=YW((*qPY-#-@rk>U>m4mf@1A?c*WPV?UF&T6z~dJ&?CC?j#08ynrwR z!_2V%JoW=}b)Z%QP%+U2pwnnJx|=4RaUADNT{1rRv~+|ow(@|H2<2N!a)3l+MdOQ! zAGKT1?sU16t7z=4rLDv^Odc~K#Vp^bKt!;;vs_!WC5+@g5$9>7u|!x-^Hl7Jv!{>R z8Y&f>zS|0^@<*F?Y5r^_luQ=Txn!RUvO2qth|vGZ*_Z$mU;<2l2`~XBzyz286JP>N TfC>CFf$HPhyWeho;4*jt@+UG+ literal 0 HcmV?d00001 diff --git a/library/xml b/library/xml index 24d29ef54..42736fe49 160000 --- a/library/xml +++ b/library/xml @@ -1 +1 @@ -Subproject commit 24d29ef54a4f60efb26fd9608c5cb11dfcd4d940 +Subproject commit 42736fe494e7edeb884caa45a8669996a0eafb11 diff --git a/plugins/CMakeLists.txt b/plugins/CMakeLists.txt index ee4bd9390..b8469c4e1 100644 --- a/plugins/CMakeLists.txt +++ b/plugins/CMakeLists.txt @@ -13,6 +13,7 @@ endif() OPTION(BUILD_ISOWORLD "Build isoworld (needs a checkout first)." OFF) if(BUILD_ISOWORLD) + DFHACK_PLUGIN(isoworldremote isoworldremote.cpp PROTOBUFS isoworldremote) add_subdirectory (isoworld) IF(UNIX) if (APPLE) @@ -148,7 +149,6 @@ if (BUILD_SUPPORTED) DFHACK_PLUGIN(trueTransformation trueTransformation.cpp) DFHACK_PLUGIN(infiniteSky infiniteSky.cpp) DFHACK_PLUGIN(createitem createitem.cpp) - DFHACK_PLUGIN(isoworldremote isoworldremote.cpp PROTOBUFS isoworldremote) DFHACK_PLUGIN(buildingplan buildingplan.cpp) DFHACK_PLUGIN(resume resume.cpp) DFHACK_PLUGIN(dwarfmonitor dwarfmonitor.cpp) diff --git a/plugins/isoworld b/plugins/isoworld index aa3b1bd51..29fad1ef8 160000 --- a/plugins/isoworld +++ b/plugins/isoworld @@ -1 +1 @@ -Subproject commit aa3b1bd51f269c07b3235392fd7ed21fe9171f3f +Subproject commit 29fad1ef8e7e2aceb2e68c93a3993933168fe885 diff --git a/plugins/stonesense b/plugins/stonesense index 0d41614ff..dbcc80ff3 160000 --- a/plugins/stonesense +++ b/plugins/stonesense @@ -1 +1 @@ -Subproject commit 0d41614ff3dae9245e786ad667b0e463fe0dea3e +Subproject commit dbcc80ff364978e9e5fec13e425b0af84c403f10 From ebc51f1bd335f154d3583128cf53782d4da004bc Mon Sep 17 00:00:00 2001 From: Warmist Date: Fri, 21 Jun 2013 22:47:23 +0300 Subject: [PATCH 03/72] Added rendermax plugin- a bunch of rendering hax in one. Small fix to skeleton. --- plugins/CMakeLists.txt | 4 + plugins/rendermax/CMakeLists.txt | 39 ++ plugins/rendermax/renderer_opengl.hpp | 658 ++++++++++++++++++++++++++ plugins/skeleton/CMakeLists.txt | 2 +- 4 files changed, 702 insertions(+), 1 deletion(-) create mode 100644 plugins/rendermax/CMakeLists.txt create mode 100644 plugins/rendermax/renderer_opengl.hpp diff --git a/plugins/CMakeLists.txt b/plugins/CMakeLists.txt index 638fed3fd..b1407045c 100644 --- a/plugins/CMakeLists.txt +++ b/plugins/CMakeLists.txt @@ -163,3 +163,7 @@ OPTION(BUILD_SKELETON "Build the skeleton plugin." OFF) if(BUILD_SKELETON) add_subdirectory(skeleton) endif() +OPTION(BUILD_RENDERMAX "Build the rendermax alt-renderers plugin." OFF) +if(BUILD_RENDERMAX) + add_subdirectory(rendermax) +endif() \ No newline at end of file diff --git a/plugins/rendermax/CMakeLists.txt b/plugins/rendermax/CMakeLists.txt new file mode 100644 index 000000000..7b9d7bdf7 --- /dev/null +++ b/plugins/rendermax/CMakeLists.txt @@ -0,0 +1,39 @@ +PROJECT (rendermax) +Find_Package(SDL REQUIRED) +find_package(OpenGL REQUIRED) +find_package(GLUT REQUIRED) +# A list of source files +SET(PROJECT_SRCS + rendermax.cpp +) +# A list of headers +SET(PROJECT_HDRS + renderer_opengl.hpp +) +SET_SOURCE_FILES_PROPERTIES( ${PROJECT_HDRS} PROPERTIES HEADER_FILE_ONLY TRUE) + +# mash them together (headers are marked as headers and nothing will try to compile them) +LIST(APPEND PROJECT_SRCS ${PROJECT_HDRS}) +include_directories(${SDL_INCLUDE_DIR}) + +#linux +IF(UNIX) + add_definitions(-DLINUX_BUILD) + SET(PROJECT_LIBS + # add any extra linux libs here + ${SDL_LIBRARY} + opengl + ${PROJECT_LIBS} + ) +# windows +ELSE(UNIX) + SET(PROJECT_LIBS + # add any extra windows libs here + ${SDL_LIBRARY} + opengl + ${PROJECT_LIBS} + $(NOINHERIT) + ) +ENDIF(UNIX) +# this makes sure all the stuff is put in proper places and linked to dfhack +DFHACK_PLUGIN(rendermax ${PROJECT_SRCS} LINK_LIBRARIES ${PROJECT_LIBS}) diff --git a/plugins/rendermax/renderer_opengl.hpp b/plugins/rendermax/renderer_opengl.hpp new file mode 100644 index 000000000..60c912d05 --- /dev/null +++ b/plugins/rendermax/renderer_opengl.hpp @@ -0,0 +1,658 @@ +//original file from https://github.com/Baughn/Dwarf-Fortress--libgraphics- +#include "Core.h" +#include +#include "df/renderer.h" +#include "df/init.h" +#include "df/enabler.h" +#include "df/zoom_commands.h" +#include "df/texture_handler.h" + +using df::renderer; +using df::init; +using df::enabler; + +#include "SDL.h" + +#ifdef __APPLE__ +#include +#include +//#include +#else +#ifdef _WIN32 +#include +#endif +#include +#include +//#include +#endif +bool isFullscreen() +{ + return df::global::enabler->fullscreen; +} + +template +struct Either { + bool isL; + union { + L left; + R right; + }; + Either(const L &l) { + isL = true; + left = l; + } + Either(const R &r) { + isL = false; + right = r; + } +}; + +// STANDARD +class renderer_opengl : public renderer { +public: + virtual bool uses_opengl() { return true; } + +protected: + SDL_Surface *screen; + + int dispx, dispy; // Cache of the current font size + + bool init_video(int w, int h) { + // Get ourselves an opengl-enabled SDL window + uint32_t flags = SDL_HWSURFACE | SDL_OPENGL; + + // Set it up for windowed or fullscreen, depending. + if (isFullscreen()) { + flags |= SDL_FULLSCREEN; + } else { + if (!df::global::init->display.flag.is_set(INIT_DISPLAY_FLAG_NOT_RESIZABLE)) + flags |= SDL_RESIZABLE; + } + + // Setup OpenGL attributes + SDL_GL_SetAttribute(SDL_GL_SWAP_CONTROL, init.window.flag.has_flag(INIT_WINDOW_FLAG_VSYNC_ON)); + SDL_GL_SetAttribute(SDL_GL_DOUBLEBUFFER, + init.display.flag.has_flag(INIT_DISPLAY_FLAG_SINGLE_BUFFER) ? 0 : 1); + + // (Re)create the window + screen = SDL_SetVideoMode(w, h, 32, flags); + + if (!screen) return false; + + // Test double-buffering status + int test; + SDL_GL_GetAttribute(SDL_GL_DOUBLEBUFFER, &test); + if (test != ((init.display.flag.has_flag(INIT_DISPLAY_FLAG_SINGLE_BUFFER)) ? 0 : 1)) { + if (isFullscreen()); + //errorlog << "Requested single-buffering not available\n" << flush; + else + report_error("OpenGL", "Requested single-buffering not available"); + } + + // (Re)initialize GLEW. Technically only needs to be done once on + // linux, but on windows forgetting will cause crashes. + glewInit(); + + // Set the viewport and clear + glViewport(0, 0, screen->w, screen->h); + glClear(GL_COLOR_BUFFER_BIT); + + return true; + } + + // Vertexes, foreground color, background color, texture coordinates + GLfloat *vertexes, *fg, *bg, *tex; + + void write_tile_vertexes(GLfloat x, GLfloat y, GLfloat *vertex) { + vertex[0] = x; // Upper left + vertex[1] = y; + vertex[2] = x+1; // Upper right + vertex[3] = y; + vertex[4] = x; // Lower left + vertex[5] = y+1; + vertex[6] = x; // Lower left again (triangle 2) + vertex[7] = y+1; + vertex[8] = x+1; // Upper right + vertex[9] = y; + vertex[10] = x+1; // Lower right + vertex[11] = y+1; + } + + virtual void allocate(int tiles) { + vertexes = static_cast(realloc(vertexes, sizeof(GLfloat) * tiles * 2 * 6)); + assert(vertexes); + fg = static_cast(realloc(fg, sizeof(GLfloat) * tiles * 4 * 6)); + assert(fg); + bg = static_cast(realloc(bg, sizeof(GLfloat) * tiles * 4 * 6)); + assert(bg); + tex = static_cast(realloc(tex, sizeof(GLfloat) * tiles * 2 * 6)); + assert(tex); + + glEnableClientState(GL_VERTEX_ARRAY); + glVertexPointer(2, GL_FLOAT, 0, vertexes); + } + + virtual void init_opengl() { + //enabler.textures.upload_textures(); + } + + virtual void uninit_opengl() { + //enabler.textures.remove_uploaded_textures(); + } + + virtual void draw(int vertex_count) { + // Render the background colors + glDisable(GL_TEXTURE_2D); + glDisableClientState(GL_TEXTURE_COORD_ARRAY); + glDisable(GL_BLEND); + glDisable(GL_ALPHA_TEST); + glColorPointer(4, GL_FLOAT, 0, bg); + glDrawArrays(GL_TRIANGLES, 0, vertex_count); + // Render the foreground, colors and textures both + glEnable(GL_ALPHA_TEST); + glAlphaFunc(GL_NOTEQUAL, 0); + glEnable(GL_TEXTURE_2D); + glEnableClientState(GL_TEXTURE_COORD_ARRAY); + glEnable(GL_BLEND); + glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); + glTexCoordPointer(2, GL_FLOAT, 0, tex); + glColorPointer(4, GL_FLOAT, 0, fg); + glDrawArrays(GL_TRIANGLES, 0, vertex_count); + + printGLError(); + } + + void write_tile_arrays(int x, int y, GLfloat *fg, GLfloat *bg, GLfloat *tex) { + Either id = screen_to_texid(x, y); + if (id.isL) { // An ordinary tile + const gl_texpos *txt = df::global::enabler->textures.gl_texpos; + // TODO: Only bother to set the one that's actually read in flat-shading mode + // And set flat-shading mode. + for (int i = 0; i < 6; i++) { + *(fg++) = id.left.r; + *(fg++) = id.left.g; + *(fg++) = id.left.b; + *(fg++) = 1; + + *(bg++) = id.left.br; + *(bg++) = id.left.bg; + *(bg++) = id.left.bb; + *(bg++) = 1; + } + // Set texture coordinates + *(tex++) = txt[id.left.texpos].left; // Upper left + *(tex++) = txt[id.left.texpos].bottom; + *(tex++) = txt[id.left.texpos].right; // Upper right + *(tex++) = txt[id.left.texpos].bottom; + *(tex++) = txt[id.left.texpos].left; // Lower left + *(tex++) = txt[id.left.texpos].top; + + *(tex++) = txt[id.left.texpos].left; // Lower left + *(tex++) = txt[id.left.texpos].top; + *(tex++) = txt[id.left.texpos].right; // Upper right + *(tex++) = txt[id.left.texpos].bottom; + *(tex++) = txt[id.left.texpos].right; // Lower right + *(tex++) = txt[id.left.texpos].top; + } else { + // TODO + } + } + +public: + void update_tile(int x, int y) { + const int tile = x*gps.dimy + y; + // Update the arrays + GLfloat *fg = this->fg + tile * 4 * 6; + GLfloat *bg = this->bg + tile * 4 * 6; + GLfloat *tex = this->tex + tile * 2 * 6; + write_tile_arrays(x, y, fg, bg, tex); + } + + void update_all() { + glClear(GL_COLOR_BUFFER_BIT); + for (int x = 0; x < gps.dimx; x++) + for (int y = 0; y < gps.dimy; y++) + update_tile(x, y); + } + + void render() { + draw(gps.dimx*gps.dimy*6); + if (init.display.flag.has_flag(INIT_DISPLAY_FLAG_ARB_SYNC) && GL_ARB_sync) { + assert(df::global::enabler->sync == NULL); + df::global::enabler->sync = glFenceSync(GL_SYNC_GPU_COMMANDS_COMPLETE, 0); + } + SDL_GL_SwapBuffers(); + } + + renderer_opengl() { + // Init member variables so realloc'll work + screen = NULL; + vertexes = NULL; + fg = NULL; + bg = NULL; + tex = NULL; + zoom_steps = forced_steps = 0; + + // Disable key repeat + SDL_EnableKeyRepeat(0, 0); + // Set window title/icon. + SDL_WM_SetCaption(GAME_TITLE_STRING, NULL); + SDL_Surface *icon = IMG_Load("data/art/icon.png"); + if (icon != NULL) { + SDL_WM_SetIcon(icon, NULL); + // The icon's surface doesn't get used past this point. + SDL_FreeSurface(icon); + } + + // Find the current desktop resolution if fullscreen resolution is auto + if (init.display.desired_fullscreen_width == 0 || + init.display.desired_fullscreen_height == 0) { + const struct SDL_VideoInfo *info = SDL_GetVideoInfo(); + init.display.desired_fullscreen_width = info->current_w; + init.display.desired_fullscreen_height = info->current_h; + } + + // Initialize our window + bool worked = init_video(isFullscreen() ? + init.display.desired_fullscreen_width : + init.display.desired_windowed_width, + isFullscreen() ? + init.display.desired_fullscreen_height : + init.display.desired_windowed_height); + + // Fallback to windowed mode if fullscreen fails + if (!worked && isFullscreen()) { + df::global::enabler->fullscreen = false; + report_error("SDL initialization failure, trying windowed mode", SDL_GetError()); + worked = init_video(init.display.desired_windowed_width, + init.display.desired_windowed_height); + } + // Quit if windowed fails + if (!worked) { + report_error("SDL initialization failure", SDL_GetError()); + exit(EXIT_FAILURE); + } + + // Initialize opengl + init_opengl(); + } + + virtual ~renderer_opengl() { + free(vertexes); + free(fg); + free(bg); + free(tex); + } + + int zoom_steps, forced_steps; + int natural_w, natural_h; // How large our view would be if it wasn't zoomed + + void zoom(df::zoom_commands cmd) { + pair before = compute_zoom(true); + int before_steps = zoom_steps; + switch (cmd) { + case zoom_in: zoom_steps -= init.input.zoom_speed; break; + case zoom_out: zoom_steps += init.input.zoom_speed; break; + case zoom_reset: + zoom_steps = 0; + case zoom_resetgrid: + compute_forced_zoom(); + break; + } + pair after = compute_zoom(true); + if (after == before && (cmd == zoom_in || cmd == zoom_out)) + zoom_steps = before_steps; + else + reshape(after); + } + + void compute_forced_zoom() { + forced_steps = 0; + pair zoomed = compute_zoom(); + while (zoomed.first < MIN_GRID_X || zoomed.second < MIN_GRID_Y) { + forced_steps++; + zoomed = compute_zoom(); + } + while (zoomed.first > MAX_GRID_X || zoomed.second > MAX_GRID_Y) { + forced_steps--; + zoomed = compute_zoom(); + } + } + + pair compute_zoom(bool clamp = false) { + const int dispx = isFullscreen() ? + init.font.large_font_dispx : + init.font.small_font_dispx; + const int dispy = isFullscreen() ? + init.font.large_font_dispy : + init.font.small_font_dispy; + int w, h; + if (dispx < dispy) { + w = natural_w + zoom_steps + forced_steps; + h = double(natural_h) * (double(w) / double(natural_w)); + } else { + h = natural_h + zoom_steps + forced_steps; + w = double(natural_w) * (double(h) / double(natural_h)); + } + if (clamp) { + w = MIN(MAX(w, MIN_GRID_X), MAX_GRID_X); + h = MIN(MAX(h, MIN_GRID_Y), MAX_GRID_Y); + } + return make_pair(w,h); + } + + // Parameters: grid units + void reshape(pair size) { + int w = MIN(MAX(size.first, MIN_GRID_X), MAX_GRID_X); + int h = MIN(MAX(size.second, MIN_GRID_Y), MAX_GRID_Y); +#ifdef DEBUG + cout << "Resizing grid to " << w << "x" << h << endl; +#endif + gps_allocate(w, h); + reshape_gl(); + } + + int off_x, off_y, size_x, size_y; + + bool get_mouse_coords(int &x, int &y) { + int mouse_x, mouse_y; + SDL_GetMouseState(&mouse_x, &mouse_y); + mouse_x -= off_x; mouse_y -= off_y; + if (mouse_x < 0 || mouse_y < 0 || + mouse_x >= size_x || mouse_y >= size_y) + return false; // Out of bounds + x = double(mouse_x) / double(size_x) * double(gps.dimx); + y = double(mouse_y) / double(size_y) * double(gps.dimy); + return true; + } + + virtual void reshape_gl() { + // Allocate array memory + allocate(gps.dimx * gps.dimy); + // Initialize the vertex array + int tile = 0; + for (GLfloat x = 0; x < gps.dimx; x++) + for (GLfloat y = 0; y < gps.dimy; y++, tile++) + write_tile_vertexes(x, y, vertexes + 6*2*tile); + // Setup invariant state + glEnableClientState(GL_COLOR_ARRAY); + /// Set up our coordinate system + if (forced_steps + zoom_steps == 0 && + init.display.flag.has_flag(INIT_DISPLAY_FLAG_BLACK_SPACE)) { + size_x = gps.dimx * dispx; + size_y = gps.dimy * dispy; + off_x = (screen->w - size_x) / 2; + off_y = (screen->h - size_y) / 2; + } else { + // If we're zooming (or just not using black space), we use the + // entire window. + size_x = screen->w; + size_y = screen->h; + off_x = off_y = 0; + } + glViewport(off_x, off_y, size_x, size_y); + glMatrixMode(GL_MODELVIEW); + glLoadIdentity(); + glMatrixMode(GL_PROJECTION); + glLoadIdentity(); + gluOrtho2D(0, gps.dimx, gps.dimy, 0); + } + + // Parameters: window size + void resize(int w, int h) { + // (Re)calculate grid-size + dispx = isFullscreen() ? + init.font.large_font_dispx : + init.font.small_font_dispx; + dispy = isFullscreen() ? + init.font.large_font_dispy : + init.font.small_font_dispy; + natural_w = MAX(w / dispx,1); + natural_h = MAX(h / dispy,1); + // Compute forced_steps so we satisfy our grid-size limits + compute_forced_zoom(); + // Force a full display cycle + gps.force_full_display_count = 1; + df::global::enabler->flag |= ENABLERFLAG_RENDER; + // Reinitialize the video + uninit_opengl(); + init_video(w, h); + init_opengl(); + // Only reshape if we're free to pick grid size + if (df::global::enabler->overridden_grid_sizes.size() == 0) + reshape(compute_zoom()); + } + + // Parameters: grid size + void grid_resize(int w, int h) { + reshape(make_pair(w, h)); + } + +public: + void set_fullscreen() { + if (isFullscreen()) { + init.display.desired_windowed_width = screen->w; + init.display.desired_windowed_height = screen->h; + resize(init.display.desired_fullscreen_width, + init.display.desired_fullscreen_height); + } else { + resize(init.display.desired_windowed_width, init.display.desired_windowed_height); + } + } +}; + +// Specialization for PARTIAL:0 +class renderer_once : public renderer_opengl { + int tile_count; + +protected: + void update_tile(int x, int y) { + write_tile_vertexes(x, y, vertexes + tile_count * 6 * 2); + write_tile_arrays(x, y, + fg + tile_count * 6 * 4, + bg + tile_count * 6 * 4, + tex + tile_count * 6 * 2); + tile_count++; + } + + void draw(int dummy) { + renderer_opengl::draw(tile_count*6); + tile_count = 0; + } + +public: + renderer_once() { + tile_count = 0; + } +}; + +// PARTIAL:N +class renderer_partial : public renderer_opengl { + int buffersz; + list erasz; // Previous eras + int current_erasz; // And the current one + int sum_erasz; + int head, tail; // First unused tile, first used tile respectively + int redraw_count; // Number of eras to max out at + + void update_tile(int x, int y) { + write_tile_vertexes(x, y, vertexes + head * 6 * 2); + write_tile_arrays(x, y, + fg + head * 6 * 4, + bg + head * 6 * 4, + tex + head * 6 * 2); + head = (head + 1) % buffersz; + current_erasz++; sum_erasz++; + if (head == tail) { + //gamelog << "Expanding partial-printing buffer" << endl; + // Buffer is full, expand it. + renderer_opengl::allocate(buffersz * 2); + // Move the tail to the end of the newly allocated space + tail += buffersz; + memmove(vertexes + tail * 6 * 2, vertexes + head * 6 * 2, sizeof(GLfloat) * 6 * 2 * (buffersz - head)); + memmove(fg + tail * 6 * 4, fg + head * 6 * 4, sizeof(GLfloat) * 6 * 4 * (buffersz - head)); + memmove(bg + tail * 6 * 4, fg + head * 6 * 4, sizeof(GLfloat) * 6 * 4 * (buffersz - head)); + memmove(tex + tail * 6 * 2, fg + head * 6 * 2, sizeof(GLfloat) * 6 * 2 * (buffersz - head)); + // And finish. + buffersz *= 2; + } + } + + void allocate(int tile_count) { + assert(false); + } + + virtual void reshape_gl() { + // TODO: This function is duplicate code w/base class reshape_gl + // Setup invariant state + glEnableClientState(GL_COLOR_ARRAY); + /// Set up our coordinate system + if (forced_steps + zoom_steps == 0 && + init.display.flag.has_flag(INIT_DISPLAY_FLAG_BLACK_SPACE)) { + size_x = gps.dimx * dispx; + size_y = gps.dimy * dispy; + off_x = (screen->w - size_x) / 2; + off_y = (screen->h - size_y) / 2; + } else { + // If we're zooming (or just not using black space), we use the + // entire window. + size_x = screen->w; + size_y = screen->h; + off_x = off_y = 0; + } + glViewport(off_x, off_y, size_x, size_y); + glMatrixMode(GL_MODELVIEW); + glLoadIdentity(); + glMatrixMode(GL_PROJECTION); + glLoadIdentity(); + gluOrtho2D(0, gps.dimx, gps.dimy, 0); + } + + void draw_arrays(GLfloat *vertexes, GLfloat *fg, GLfloat *bg, GLfloat *tex, int tile_count) { + // Set vertex pointer + glVertexPointer(2, GL_FLOAT, 0, vertexes); + // Render the background colors + glDisable(GL_TEXTURE_2D); + glDisableClientState(GL_TEXTURE_COORD_ARRAY); + glDisable(GL_BLEND); + glDisable(GL_ALPHA_TEST); + glColorPointer(4, GL_FLOAT, 0, bg); + glDrawArrays(GL_TRIANGLES, 0, tile_count * 6); + // Render the foreground, colors and textures both + glEnable(GL_ALPHA_TEST); + glAlphaFunc(GL_NOTEQUAL, 0); + glEnable(GL_TEXTURE_2D); + glEnableClientState(GL_TEXTURE_COORD_ARRAY); + glEnable(GL_BLEND); + glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); + glColorPointer(4, GL_FLOAT, 0, fg); + glTexCoordPointer(2, GL_FLOAT, 0, tex); + glDrawArrays(GL_TRIANGLES, 0, tile_count * 6); + } + + void draw(int dummy) { + if (tail > head) { + // We're straddling the end of the array, so have to do this in two steps + draw_arrays(vertexes + tail * 6 * 2, + fg + tail * 6 * 4, + bg + tail * 6 * 4, + tex + tail * 6 * 2, + buffersz - tail); + draw_arrays(vertexes, fg, bg, tex, head-1); + } else { + draw_arrays(vertexes + tail * 6 * 2, + fg + tail * 6 * 4, + bg + tail * 6 * 4, + tex + tail * 6 * 2, + sum_erasz); + } + + printGLError(); + erasz.push_back(current_erasz); current_erasz = 0; + if (erasz.size() == redraw_count) { + // Right, time to retire the oldest era. + tail = (tail + erasz.front()) % buffersz; + sum_erasz -= erasz.front(); + erasz.pop_front(); + } + } + +public: + renderer_partial() { + redraw_count = init.display.partial_print_count; + buffersz = 2048; + renderer_opengl::allocate(buffersz); + current_erasz = head = tail = sum_erasz = 0; + } +}; + +class renderer_accum_buffer : public renderer_once { + void draw(int vertex_count) { + // Copy the previous frame's buffer back in + glAccum(GL_RETURN, 1); + renderer_once::draw(vertex_count); + // Store the screen contents back to the buffer + glAccum(GL_LOAD, 1); + } +}; + +class renderer_framebuffer : public renderer_once { + GLuint framebuffer, fb_texture; + + void init_opengl() { + glGenFramebuffersEXT(1, &framebuffer); + // Allocate FBO texture memory + glGenTextures(1, &fb_texture); + glBindTexture(GL_TEXTURE_2D, fb_texture); + glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, + screen->w, screen->h, + 0, GL_RGBA, GL_UNSIGNED_BYTE, NULL); + glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MAG_FILTER,GL_NEAREST); + glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MIN_FILTER,GL_NEAREST); + + // Bind texture to FBO + glBindFramebufferEXT(GL_DRAW_FRAMEBUFFER_EXT, framebuffer); + glFramebufferTexture2DEXT(GL_DRAW_FRAMEBUFFER_EXT, GL_COLOR_ATTACHMENT0_EXT, + GL_TEXTURE_2D, fb_texture, 0); + renderer_once::init_opengl(); + } + + void uninit_opengl() { + renderer_once::uninit_opengl(); + glDeleteTextures(1, &fb_texture); + glDeleteFramebuffersEXT(1, &framebuffer); + } + + void draw(int vertex_count) { + // Bind the framebuffer + glBindFramebufferEXT(GL_DRAW_FRAMEBUFFER_EXT, framebuffer); + glBindFramebufferEXT(GL_READ_FRAMEBUFFER_EXT, 0); + // Draw + renderer_once::draw(vertex_count); + // Draw the framebuffer to screen + glBindFramebufferEXT(GL_DRAW_FRAMEBUFFER_EXT, 0); + glBindFramebufferEXT(GL_READ_FRAMEBUFFER_EXT, framebuffer); + glBlitFramebufferEXT(0,0, screen->w, screen->h, + 0,0, screen->w, screen->h, + GL_COLOR_BUFFER_BIT, GL_NEAREST); + printGLError(); + } +}; + +class renderer_vbo : public renderer_opengl { + GLuint vbo; // Vertexes only + + void init_opengl() { + renderer_opengl::init_opengl(); + glGenBuffersARB(1, &vbo); + glBindBufferARB(GL_ARRAY_BUFFER_ARB, vbo); + glBufferDataARB(GL_ARRAY_BUFFER_ARB, gps.dimx*gps.dimy*6*2*sizeof(GLfloat), vertexes, GL_STATIC_DRAW_ARB); + glVertexPointer(2, GL_FLOAT, 0, 0); + glBindBufferARB(GL_ARRAY_BUFFER_ARB, 0); + } + + void uninit_opengl() { + glDeleteBuffersARB(1, &vbo); + renderer_opengl::uninit_opengl(); + } +}; diff --git a/plugins/skeleton/CMakeLists.txt b/plugins/skeleton/CMakeLists.txt index 542f08fe3..794f4a5d8 100644 --- a/plugins/skeleton/CMakeLists.txt +++ b/plugins/skeleton/CMakeLists.txt @@ -24,7 +24,7 @@ IF(UNIX) # windows ELSE(UNIX) SET(PROJECT_LIBS - # add any extra linux libs here + # add any extra windows libs here ${PROJECT_LIBS} $(NOINHERIT) ) From ea6a264fe2b2e6c822934a953ce110a1045fcdf3 Mon Sep 17 00:00:00 2001 From: Warmist Date: Sat, 22 Jun 2013 03:45:42 +0300 Subject: [PATCH 04/72] rendermax: removed all the opengl and sdl stuff. Now it work with magic alone. --- plugins/rendermax/CMakeLists.txt | 10 +- plugins/rendermax/renderer_opengl.hpp | 792 ++++++-------------------- 2 files changed, 161 insertions(+), 641 deletions(-) diff --git a/plugins/rendermax/CMakeLists.txt b/plugins/rendermax/CMakeLists.txt index 7b9d7bdf7..c781bde48 100644 --- a/plugins/rendermax/CMakeLists.txt +++ b/plugins/rendermax/CMakeLists.txt @@ -1,7 +1,5 @@ PROJECT (rendermax) -Find_Package(SDL REQUIRED) -find_package(OpenGL REQUIRED) -find_package(GLUT REQUIRED) + # A list of source files SET(PROJECT_SRCS rendermax.cpp @@ -14,23 +12,19 @@ SET_SOURCE_FILES_PROPERTIES( ${PROJECT_HDRS} PROPERTIES HEADER_FILE_ONLY TRUE) # mash them together (headers are marked as headers and nothing will try to compile them) LIST(APPEND PROJECT_SRCS ${PROJECT_HDRS}) -include_directories(${SDL_INCLUDE_DIR}) + #linux IF(UNIX) add_definitions(-DLINUX_BUILD) SET(PROJECT_LIBS # add any extra linux libs here - ${SDL_LIBRARY} - opengl ${PROJECT_LIBS} ) # windows ELSE(UNIX) SET(PROJECT_LIBS # add any extra windows libs here - ${SDL_LIBRARY} - opengl ${PROJECT_LIBS} $(NOINHERIT) ) diff --git a/plugins/rendermax/renderer_opengl.hpp b/plugins/rendermax/renderer_opengl.hpp index 60c912d05..7c4fea2fa 100644 --- a/plugins/rendermax/renderer_opengl.hpp +++ b/plugins/rendermax/renderer_opengl.hpp @@ -6,653 +6,179 @@ #include "df/enabler.h" #include "df/zoom_commands.h" #include "df/texture_handler.h" +#include "df/graphic.h" using df::renderer; using df::init; using df::enabler; -#include "SDL.h" - -#ifdef __APPLE__ -#include -#include -//#include -#else -#ifdef _WIN32 -#include -#endif -#include -#include -//#include -#endif -bool isFullscreen() +struct old_opengl:public renderer { - return df::global::enabler->fullscreen; -} - -template -struct Either { - bool isL; - union { - L left; - R right; - }; - Either(const L &l) { - isL = true; - left = l; - } - Either(const R &r) { - isL = false; - right = r; - } + void* sdlSurface; + int32_t dispx,dispy; + float *vertexes, *fg, *bg, *tex; + int32_t zoom_steps,forced_steps,natural_w,natural_h; + int32_t off_x,off_y,size_x,size_y; }; - -// STANDARD -class renderer_opengl : public renderer { -public: - virtual bool uses_opengl() { return true; } - -protected: - SDL_Surface *screen; - - int dispx, dispy; // Cache of the current font size - - bool init_video(int w, int h) { - // Get ourselves an opengl-enabled SDL window - uint32_t flags = SDL_HWSURFACE | SDL_OPENGL; - - // Set it up for windowed or fullscreen, depending. - if (isFullscreen()) { - flags |= SDL_FULLSCREEN; - } else { - if (!df::global::init->display.flag.is_set(INIT_DISPLAY_FLAG_NOT_RESIZABLE)) - flags |= SDL_RESIZABLE; - } - - // Setup OpenGL attributes - SDL_GL_SetAttribute(SDL_GL_SWAP_CONTROL, init.window.flag.has_flag(INIT_WINDOW_FLAG_VSYNC_ON)); - SDL_GL_SetAttribute(SDL_GL_DOUBLEBUFFER, - init.display.flag.has_flag(INIT_DISPLAY_FLAG_SINGLE_BUFFER) ? 0 : 1); - - // (Re)create the window - screen = SDL_SetVideoMode(w, h, 32, flags); - - if (!screen) return false; - - // Test double-buffering status - int test; - SDL_GL_GetAttribute(SDL_GL_DOUBLEBUFFER, &test); - if (test != ((init.display.flag.has_flag(INIT_DISPLAY_FLAG_SINGLE_BUFFER)) ? 0 : 1)) { - if (isFullscreen()); - //errorlog << "Requested single-buffering not available\n" << flush; - else - report_error("OpenGL", "Requested single-buffering not available"); - } - - // (Re)initialize GLEW. Technically only needs to be done once on - // linux, but on windows forgetting will cause crashes. - glewInit(); - - // Set the viewport and clear - glViewport(0, 0, screen->w, screen->h); - glClear(GL_COLOR_BUFFER_BIT); - - return true; - } - - // Vertexes, foreground color, background color, texture coordinates - GLfloat *vertexes, *fg, *bg, *tex; - - void write_tile_vertexes(GLfloat x, GLfloat y, GLfloat *vertex) { - vertex[0] = x; // Upper left - vertex[1] = y; - vertex[2] = x+1; // Upper right - vertex[3] = y; - vertex[4] = x; // Lower left - vertex[5] = y+1; - vertex[6] = x; // Lower left again (triangle 2) - vertex[7] = y+1; - vertex[8] = x+1; // Upper right - vertex[9] = y; - vertex[10] = x+1; // Lower right - vertex[11] = y+1; - } - - virtual void allocate(int tiles) { - vertexes = static_cast(realloc(vertexes, sizeof(GLfloat) * tiles * 2 * 6)); - assert(vertexes); - fg = static_cast(realloc(fg, sizeof(GLfloat) * tiles * 4 * 6)); - assert(fg); - bg = static_cast(realloc(bg, sizeof(GLfloat) * tiles * 4 * 6)); - assert(bg); - tex = static_cast(realloc(tex, sizeof(GLfloat) * tiles * 2 * 6)); - assert(tex); - - glEnableClientState(GL_VERTEX_ARRAY); - glVertexPointer(2, GL_FLOAT, 0, vertexes); - } - - virtual void init_opengl() { - //enabler.textures.upload_textures(); - } - - virtual void uninit_opengl() { - //enabler.textures.remove_uploaded_textures(); - } - - virtual void draw(int vertex_count) { - // Render the background colors - glDisable(GL_TEXTURE_2D); - glDisableClientState(GL_TEXTURE_COORD_ARRAY); - glDisable(GL_BLEND); - glDisable(GL_ALPHA_TEST); - glColorPointer(4, GL_FLOAT, 0, bg); - glDrawArrays(GL_TRIANGLES, 0, vertex_count); - // Render the foreground, colors and textures both - glEnable(GL_ALPHA_TEST); - glAlphaFunc(GL_NOTEQUAL, 0); - glEnable(GL_TEXTURE_2D); - glEnableClientState(GL_TEXTURE_COORD_ARRAY); - glEnable(GL_BLEND); - glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); - glTexCoordPointer(2, GL_FLOAT, 0, tex); - glColorPointer(4, GL_FLOAT, 0, fg); - glDrawArrays(GL_TRIANGLES, 0, vertex_count); - - printGLError(); - } - - void write_tile_arrays(int x, int y, GLfloat *fg, GLfloat *bg, GLfloat *tex) { - Either id = screen_to_texid(x, y); - if (id.isL) { // An ordinary tile - const gl_texpos *txt = df::global::enabler->textures.gl_texpos; - // TODO: Only bother to set the one that's actually read in flat-shading mode - // And set flat-shading mode. - for (int i = 0; i < 6; i++) { - *(fg++) = id.left.r; - *(fg++) = id.left.g; - *(fg++) = id.left.b; - *(fg++) = 1; - - *(bg++) = id.left.br; - *(bg++) = id.left.bg; - *(bg++) = id.left.bb; - *(bg++) = 1; - } - // Set texture coordinates - *(tex++) = txt[id.left.texpos].left; // Upper left - *(tex++) = txt[id.left.texpos].bottom; - *(tex++) = txt[id.left.texpos].right; // Upper right - *(tex++) = txt[id.left.texpos].bottom; - *(tex++) = txt[id.left.texpos].left; // Lower left - *(tex++) = txt[id.left.texpos].top; - - *(tex++) = txt[id.left.texpos].left; // Lower left - *(tex++) = txt[id.left.texpos].top; - *(tex++) = txt[id.left.texpos].right; // Upper right - *(tex++) = txt[id.left.texpos].bottom; - *(tex++) = txt[id.left.texpos].right; // Lower right - *(tex++) = txt[id.left.texpos].top; - } else { - // TODO - } - } - -public: - void update_tile(int x, int y) { - const int tile = x*gps.dimy + y; - // Update the arrays - GLfloat *fg = this->fg + tile * 4 * 6; - GLfloat *bg = this->bg + tile * 4 * 6; - GLfloat *tex = this->tex + tile * 2 * 6; - write_tile_arrays(x, y, fg, bg, tex); - } - - void update_all() { - glClear(GL_COLOR_BUFFER_BIT); - for (int x = 0; x < gps.dimx; x++) - for (int y = 0; y < gps.dimy; y++) - update_tile(x, y); - } - - void render() { - draw(gps.dimx*gps.dimy*6); - if (init.display.flag.has_flag(INIT_DISPLAY_FLAG_ARB_SYNC) && GL_ARB_sync) { - assert(df::global::enabler->sync == NULL); - df::global::enabler->sync = glFenceSync(GL_SYNC_GPU_COMMANDS_COMPLETE, 0); - } - SDL_GL_SwapBuffers(); - } - - renderer_opengl() { - // Init member variables so realloc'll work - screen = NULL; - vertexes = NULL; - fg = NULL; - bg = NULL; - tex = NULL; - zoom_steps = forced_steps = 0; - - // Disable key repeat - SDL_EnableKeyRepeat(0, 0); - // Set window title/icon. - SDL_WM_SetCaption(GAME_TITLE_STRING, NULL); - SDL_Surface *icon = IMG_Load("data/art/icon.png"); - if (icon != NULL) { - SDL_WM_SetIcon(icon, NULL); - // The icon's surface doesn't get used past this point. - SDL_FreeSurface(icon); - } - - // Find the current desktop resolution if fullscreen resolution is auto - if (init.display.desired_fullscreen_width == 0 || - init.display.desired_fullscreen_height == 0) { - const struct SDL_VideoInfo *info = SDL_GetVideoInfo(); - init.display.desired_fullscreen_width = info->current_w; - init.display.desired_fullscreen_height = info->current_h; - } - - // Initialize our window - bool worked = init_video(isFullscreen() ? - init.display.desired_fullscreen_width : - init.display.desired_windowed_width, - isFullscreen() ? - init.display.desired_fullscreen_height : - init.display.desired_windowed_height); - - // Fallback to windowed mode if fullscreen fails - if (!worked && isFullscreen()) { - df::global::enabler->fullscreen = false; - report_error("SDL initialization failure, trying windowed mode", SDL_GetError()); - worked = init_video(init.display.desired_windowed_width, - init.display.desired_windowed_height); - } - // Quit if windowed fails - if (!worked) { - report_error("SDL initialization failure", SDL_GetError()); - exit(EXIT_FAILURE); - } - - // Initialize opengl - init_opengl(); - } - - virtual ~renderer_opengl() { - free(vertexes); - free(fg); - free(bg); - free(tex); - } - - int zoom_steps, forced_steps; - int natural_w, natural_h; // How large our view would be if it wasn't zoomed - - void zoom(df::zoom_commands cmd) { - pair before = compute_zoom(true); - int before_steps = zoom_steps; - switch (cmd) { - case zoom_in: zoom_steps -= init.input.zoom_speed; break; - case zoom_out: zoom_steps += init.input.zoom_speed; break; - case zoom_reset: - zoom_steps = 0; - case zoom_resetgrid: - compute_forced_zoom(); - break; - } - pair after = compute_zoom(true); - if (after == before && (cmd == zoom_in || cmd == zoom_out)) - zoom_steps = before_steps; - else - reshape(after); - } - - void compute_forced_zoom() { - forced_steps = 0; - pair zoomed = compute_zoom(); - while (zoomed.first < MIN_GRID_X || zoomed.second < MIN_GRID_Y) { - forced_steps++; - zoomed = compute_zoom(); - } - while (zoomed.first > MAX_GRID_X || zoomed.second > MAX_GRID_Y) { - forced_steps--; - zoomed = compute_zoom(); - } - } - - pair compute_zoom(bool clamp = false) { - const int dispx = isFullscreen() ? - init.font.large_font_dispx : - init.font.small_font_dispx; - const int dispy = isFullscreen() ? - init.font.large_font_dispy : - init.font.small_font_dispy; - int w, h; - if (dispx < dispy) { - w = natural_w + zoom_steps + forced_steps; - h = double(natural_h) * (double(w) / double(natural_w)); - } else { - h = natural_h + zoom_steps + forced_steps; - w = double(natural_w) * (double(h) / double(natural_h)); +struct renderer_wrap : public renderer { +private: + void set_to_null() { + screen = NULL; + screentexpos = NULL; + screentexpos_addcolor = NULL; + screentexpos_grayscale = NULL; + screentexpos_cf = NULL; + screentexpos_cbr = NULL; + screen_old = NULL; + screentexpos_old = NULL; + screentexpos_addcolor_old = NULL; + screentexpos_grayscale_old = NULL; + screentexpos_cf_old = NULL; + screentexpos_cbr_old = NULL; + } + + void copy_from_inner() { + screen = parent->screen; + screentexpos = parent->screentexpos; + screentexpos_addcolor = parent->screentexpos_addcolor; + screentexpos_grayscale = parent->screentexpos_grayscale; + screentexpos_cf = parent->screentexpos_cf; + screentexpos_cbr = parent->screentexpos_cbr; + screen_old = parent->screen_old; + screentexpos_old = parent->screentexpos_old; + screentexpos_addcolor_old = parent->screentexpos_addcolor_old; + screentexpos_grayscale_old = parent->screentexpos_grayscale_old; + screentexpos_cf_old = parent->screentexpos_cf_old; + screentexpos_cbr_old = parent->screentexpos_cbr_old; + } + + void copy_to_inner() { + parent->screen = screen; + parent->screentexpos = screentexpos; + parent->screentexpos_addcolor = screentexpos_addcolor; + parent->screentexpos_grayscale = screentexpos_grayscale; + parent->screentexpos_cf = screentexpos_cf; + parent->screentexpos_cbr = screentexpos_cbr; + parent->screen_old = screen_old; + parent->screentexpos_old = screentexpos_old; + parent->screentexpos_addcolor_old = screentexpos_addcolor_old; + parent->screentexpos_grayscale_old = screentexpos_grayscale_old; + parent->screentexpos_cf_old = screentexpos_cf_old; + parent->screentexpos_cbr_old = screentexpos_cbr_old; } - if (clamp) { - w = MIN(MAX(w, MIN_GRID_X), MAX_GRID_X); - h = MIN(MAX(h, MIN_GRID_Y), MAX_GRID_Y); - } - return make_pair(w,h); - } - - // Parameters: grid units - void reshape(pair size) { - int w = MIN(MAX(size.first, MIN_GRID_X), MAX_GRID_X); - int h = MIN(MAX(size.second, MIN_GRID_Y), MAX_GRID_Y); -#ifdef DEBUG - cout << "Resizing grid to " << w << "x" << h << endl; -#endif - gps_allocate(w, h); - reshape_gl(); - } - - int off_x, off_y, size_x, size_y; - - bool get_mouse_coords(int &x, int &y) { - int mouse_x, mouse_y; - SDL_GetMouseState(&mouse_x, &mouse_y); - mouse_x -= off_x; mouse_y -= off_y; - if (mouse_x < 0 || mouse_y < 0 || - mouse_x >= size_x || mouse_y >= size_y) - return false; // Out of bounds - x = double(mouse_x) / double(size_x) * double(gps.dimx); - y = double(mouse_y) / double(size_y) * double(gps.dimy); - return true; - } - - virtual void reshape_gl() { - // Allocate array memory - allocate(gps.dimx * gps.dimy); - // Initialize the vertex array - int tile = 0; - for (GLfloat x = 0; x < gps.dimx; x++) - for (GLfloat y = 0; y < gps.dimy; y++, tile++) - write_tile_vertexes(x, y, vertexes + 6*2*tile); - // Setup invariant state - glEnableClientState(GL_COLOR_ARRAY); - /// Set up our coordinate system - if (forced_steps + zoom_steps == 0 && - init.display.flag.has_flag(INIT_DISPLAY_FLAG_BLACK_SPACE)) { - size_x = gps.dimx * dispx; - size_y = gps.dimy * dispy; - off_x = (screen->w - size_x) / 2; - off_y = (screen->h - size_y) / 2; - } else { - // If we're zooming (or just not using black space), we use the - // entire window. - size_x = screen->w; - size_y = screen->h; - off_x = off_y = 0; - } - glViewport(off_x, off_y, size_x, size_y); - glMatrixMode(GL_MODELVIEW); - glLoadIdentity(); - glMatrixMode(GL_PROJECTION); - glLoadIdentity(); - gluOrtho2D(0, gps.dimx, gps.dimy, 0); - } - - // Parameters: window size - void resize(int w, int h) { - // (Re)calculate grid-size - dispx = isFullscreen() ? - init.font.large_font_dispx : - init.font.small_font_dispx; - dispy = isFullscreen() ? - init.font.large_font_dispy : - init.font.small_font_dispy; - natural_w = MAX(w / dispx,1); - natural_h = MAX(h / dispy,1); - // Compute forced_steps so we satisfy our grid-size limits - compute_forced_zoom(); - // Force a full display cycle - gps.force_full_display_count = 1; - df::global::enabler->flag |= ENABLERFLAG_RENDER; - // Reinitialize the video - uninit_opengl(); - init_video(w, h); - init_opengl(); - // Only reshape if we're free to pick grid size - if (df::global::enabler->overridden_grid_sizes.size() == 0) - reshape(compute_zoom()); - } - - // Parameters: grid size - void grid_resize(int w, int h) { - reshape(make_pair(w, h)); - } - public: - void set_fullscreen() { - if (isFullscreen()) { - init.display.desired_windowed_width = screen->w; - init.display.desired_windowed_height = screen->h; - resize(init.display.desired_fullscreen_width, - init.display.desired_fullscreen_height); - } else { - resize(init.display.desired_windowed_width, init.display.desired_windowed_height); + renderer_wrap(renderer* parent):parent(parent) + { + copy_from_inner(); } - } -}; + virtual void update_tile(int32_t x, int32_t y) { -// Specialization for PARTIAL:0 -class renderer_once : public renderer_opengl { - int tile_count; - + copy_to_inner(); + parent->update_tile(x,y); + }; + virtual void update_all() { + copy_to_inner(); + parent->update_all(); + }; + virtual void render() { + copy_to_inner(); + parent->render(); + }; + virtual void set_fullscreen() { + copy_to_inner(); + parent->set_fullscreen(); + }; + virtual void zoom(df::zoom_commands z) { + copy_to_inner(); + parent->zoom(z); + }; + virtual void resize(int32_t w, int32_t h) { + copy_to_inner(); + parent->resize(w,h); + copy_from_inner(); + }; + virtual void grid_resize(int32_t w, int32_t h) { + copy_to_inner(); + parent->grid_resize(w,h); + copy_from_inner(); + }; + virtual ~renderer_wrap() { + df::global::enabler->renderer=parent; + }; + virtual bool get_mouse_coords(int32_t* x, int32_t* y) { + return parent->get_mouse_coords(x,y); + }; + virtual bool uses_opengl() { + return parent->uses_opengl(); + }; protected: - void update_tile(int x, int y) { - write_tile_vertexes(x, y, vertexes + tile_count * 6 * 2); - write_tile_arrays(x, y, - fg + tile_count * 6 * 4, - bg + tile_count * 6 * 4, - tex + tile_count * 6 * 2); - tile_count++; - } - - void draw(int dummy) { - renderer_opengl::draw(tile_count*6); - tile_count = 0; - } - -public: - renderer_once() { - tile_count = 0; - } + renderer* parent; }; - -// PARTIAL:N -class renderer_partial : public renderer_opengl { - int buffersz; - list erasz; // Previous eras - int current_erasz; // And the current one - int sum_erasz; - int head, tail; // First unused tile, first used tile respectively - int redraw_count; // Number of eras to max out at - - void update_tile(int x, int y) { - write_tile_vertexes(x, y, vertexes + head * 6 * 2); - write_tile_arrays(x, y, - fg + head * 6 * 4, - bg + head * 6 * 4, - tex + head * 6 * 2); - head = (head + 1) % buffersz; - current_erasz++; sum_erasz++; - if (head == tail) { - //gamelog << "Expanding partial-printing buffer" << endl; - // Buffer is full, expand it. - renderer_opengl::allocate(buffersz * 2); - // Move the tail to the end of the newly allocated space - tail += buffersz; - memmove(vertexes + tail * 6 * 2, vertexes + head * 6 * 2, sizeof(GLfloat) * 6 * 2 * (buffersz - head)); - memmove(fg + tail * 6 * 4, fg + head * 6 * 4, sizeof(GLfloat) * 6 * 4 * (buffersz - head)); - memmove(bg + tail * 6 * 4, fg + head * 6 * 4, sizeof(GLfloat) * 6 * 4 * (buffersz - head)); - memmove(tex + tail * 6 * 2, fg + head * 6 * 2, sizeof(GLfloat) * 6 * 2 * (buffersz - head)); - // And finish. - buffersz *= 2; - } - } - - void allocate(int tile_count) { - assert(false); - } - - virtual void reshape_gl() { - // TODO: This function is duplicate code w/base class reshape_gl - // Setup invariant state - glEnableClientState(GL_COLOR_ARRAY); - /// Set up our coordinate system - if (forced_steps + zoom_steps == 0 && - init.display.flag.has_flag(INIT_DISPLAY_FLAG_BLACK_SPACE)) { - size_x = gps.dimx * dispx; - size_y = gps.dimy * dispy; - off_x = (screen->w - size_x) / 2; - off_y = (screen->h - size_y) / 2; - } else { - // If we're zooming (or just not using black space), we use the - // entire window. - size_x = screen->w; - size_y = screen->h; - off_x = off_y = 0; - } - glViewport(off_x, off_y, size_x, size_y); - glMatrixMode(GL_MODELVIEW); - glLoadIdentity(); - glMatrixMode(GL_PROJECTION); - glLoadIdentity(); - gluOrtho2D(0, gps.dimx, gps.dimy, 0); - } - - void draw_arrays(GLfloat *vertexes, GLfloat *fg, GLfloat *bg, GLfloat *tex, int tile_count) { - // Set vertex pointer - glVertexPointer(2, GL_FLOAT, 0, vertexes); - // Render the background colors - glDisable(GL_TEXTURE_2D); - glDisableClientState(GL_TEXTURE_COORD_ARRAY); - glDisable(GL_BLEND); - glDisable(GL_ALPHA_TEST); - glColorPointer(4, GL_FLOAT, 0, bg); - glDrawArrays(GL_TRIANGLES, 0, tile_count * 6); - // Render the foreground, colors and textures both - glEnable(GL_ALPHA_TEST); - glAlphaFunc(GL_NOTEQUAL, 0); - glEnable(GL_TEXTURE_2D); - glEnableClientState(GL_TEXTURE_COORD_ARRAY); - glEnable(GL_BLEND); - glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); - glColorPointer(4, GL_FLOAT, 0, fg); - glTexCoordPointer(2, GL_FLOAT, 0, tex); - glDrawArrays(GL_TRIANGLES, 0, tile_count * 6); - } - - void draw(int dummy) { - if (tail > head) { - // We're straddling the end of the array, so have to do this in two steps - draw_arrays(vertexes + tail * 6 * 2, - fg + tail * 6 * 4, - bg + tail * 6 * 4, - tex + tail * 6 * 2, - buffersz - tail); - draw_arrays(vertexes, fg, bg, tex, head-1); - } else { - draw_arrays(vertexes + tail * 6 * 2, - fg + tail * 6 * 4, - bg + tail * 6 * 4, - tex + tail * 6 * 2, - sum_erasz); - } - - printGLError(); - erasz.push_back(current_erasz); current_erasz = 0; - if (erasz.size() == redraw_count) { - // Right, time to retire the oldest era. - tail = (tail + erasz.front()) % buffersz; - sum_erasz -= erasz.front(); - erasz.pop_front(); +struct renderer_trippy : public renderer_wrap { +private: + float rFloat() + { + return rand()/(float)RAND_MAX; + } + void colorizeTile(int x,int y) + { + const int tile = x*(df::global::gps->dimy) + y; + old_opengl* p=reinterpret_cast(parent); + float *fg = p->fg + tile * 4 * 6; + float *bg = p->bg + tile * 4 * 6; + float *tex = p->tex + tile * 2 * 6; + const float val=1/2.0; + + float r=rFloat()*val - val/2; + float g=rFloat()*val - val/2; + float b=rFloat()*val - val/2; + + float backr=rFloat()*val - val/2; + float backg=rFloat()*val - val/2; + float backb=rFloat()*val - val/2; + for (int i = 0; i < 6; i++) { + *(fg++) += r; + *(fg++) += g; + *(fg++) += b; + *(fg++) = 1; + + *(bg++) += backr; + *(bg++) += backg; + *(bg++) += backb; + *(bg++) = 1; + } } - } - public: - renderer_partial() { - redraw_count = init.display.partial_print_count; - buffersz = 2048; - renderer_opengl::allocate(buffersz); - current_erasz = head = tail = sum_erasz = 0; - } -}; - -class renderer_accum_buffer : public renderer_once { - void draw(int vertex_count) { - // Copy the previous frame's buffer back in - glAccum(GL_RETURN, 1); - renderer_once::draw(vertex_count); - // Store the screen contents back to the buffer - glAccum(GL_LOAD, 1); - } + renderer_trippy(renderer* parent):renderer_wrap(parent) + { + } + virtual void update_tile(int32_t x, int32_t y) { + renderer_wrap::update_tile(x,y); + colorizeTile(x,y); + }; + virtual void update_all() { + renderer_wrap::update_all(); + for (int x = 0; x < df::global::gps->dimx; x++) + for (int y = 0; y < df::global::gps->dimy; y++) + colorizeTile(x,y); + }; }; - -class renderer_framebuffer : public renderer_once { - GLuint framebuffer, fb_texture; - - void init_opengl() { - glGenFramebuffersEXT(1, &framebuffer); - // Allocate FBO texture memory - glGenTextures(1, &fb_texture); - glBindTexture(GL_TEXTURE_2D, fb_texture); - glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, - screen->w, screen->h, - 0, GL_RGBA, GL_UNSIGNED_BYTE, NULL); - glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MAG_FILTER,GL_NEAREST); - glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MIN_FILTER,GL_NEAREST); +struct renderer_test : public renderer_wrap { +private: - // Bind texture to FBO - glBindFramebufferEXT(GL_DRAW_FRAMEBUFFER_EXT, framebuffer); - glFramebufferTexture2DEXT(GL_DRAW_FRAMEBUFFER_EXT, GL_COLOR_ATTACHMENT0_EXT, - GL_TEXTURE_2D, fb_texture, 0); - renderer_once::init_opengl(); - } - - void uninit_opengl() { - renderer_once::uninit_opengl(); - glDeleteTextures(1, &fb_texture); - glDeleteFramebuffersEXT(1, &framebuffer); - } - - void draw(int vertex_count) { - // Bind the framebuffer - glBindFramebufferEXT(GL_DRAW_FRAMEBUFFER_EXT, framebuffer); - glBindFramebufferEXT(GL_READ_FRAMEBUFFER_EXT, 0); - // Draw - renderer_once::draw(vertex_count); - // Draw the framebuffer to screen - glBindFramebufferEXT(GL_DRAW_FRAMEBUFFER_EXT, 0); - glBindFramebufferEXT(GL_READ_FRAMEBUFFER_EXT, framebuffer); - glBlitFramebufferEXT(0,0, screen->w, screen->h, - 0,0, screen->w, screen->h, - GL_COLOR_BUFFER_BIT, GL_NEAREST); - printGLError(); - } -}; - -class renderer_vbo : public renderer_opengl { - GLuint vbo; // Vertexes only - - void init_opengl() { - renderer_opengl::init_opengl(); - glGenBuffersARB(1, &vbo); - glBindBufferARB(GL_ARRAY_BUFFER_ARB, vbo); - glBufferDataARB(GL_ARRAY_BUFFER_ARB, gps.dimx*gps.dimy*6*2*sizeof(GLfloat), vertexes, GL_STATIC_DRAW_ARB); - glVertexPointer(2, GL_FLOAT, 0, 0); - glBindBufferARB(GL_ARRAY_BUFFER_ARB, 0); - } - - void uninit_opengl() { - glDeleteBuffersARB(1, &vbo); - renderer_opengl::uninit_opengl(); - } -}; +public: + renderer_test(renderer* parent):renderer_wrap(parent) + { + } + virtual void update_tile(int32_t x, int32_t y) { + renderer_wrap::update_tile(x,y); + //some sort of mutex or sth? + //and then map read + }; + virtual void update_all() { + renderer_wrap::update_all(); + //some sort of mutex or sth? + //and then map read + //same stuff for all of them i guess... + }; +}; \ No newline at end of file From c2733772849ab8013fd730539272872cfd5994e1 Mon Sep 17 00:00:00 2001 From: Warmist Date: Sat, 22 Jun 2013 13:29:58 +0300 Subject: [PATCH 05/72] Forgot to add the plugin itself. Also some improvements --- plugins/rendermax/renderer_opengl.hpp | 50 +++++++++++++- plugins/rendermax/rendermax.cpp | 99 +++++++++++++++++++++++++++ 2 files changed, 148 insertions(+), 1 deletion(-) create mode 100644 plugins/rendermax/rendermax.cpp diff --git a/plugins/rendermax/renderer_opengl.hpp b/plugins/rendermax/renderer_opengl.hpp index 7c4fea2fa..09d96ae45 100644 --- a/plugins/rendermax/renderer_opengl.hpp +++ b/plugins/rendermax/renderer_opengl.hpp @@ -1,4 +1,7 @@ //original file from https://github.com/Baughn/Dwarf-Fortress--libgraphics- +#include "tinythread.h" +#include "fast_mutex.h" + #include "Core.h" #include #include "df/renderer.h" @@ -165,20 +168,65 @@ public: }; struct renderer_test : public renderer_wrap { private: - + void colorizeTile(int x,int y) + { + const int tile = x*(df::global::gps->dimy) + y; + old_opengl* p=reinterpret_cast(parent); + float *fg = p->fg + tile * 4 * 6; + float *bg = p->bg + tile * 4 * 6; + float *tex = p->tex + tile * 2 * 6; + float v=opacity[tile]; + for (int i = 0; i < 6; i++) { + *(fg++) *= v; + *(fg++) *= v; + *(fg++) *= v; + *(fg++) = 1; + + *(bg++) *= v; + *(bg++) *= v; + *(bg++) *= v; + *(bg++) = 1; + } + } + void reinitOpacity(int w,int h) + { + tthread::lock_guard guard(dataMutex); + opacity.resize(w*h); + } + void reinitOpacity() + { + reinitOpacity(df::global::gps->dimy,df::global::gps->dimx); + } public: + tthread::fast_mutex dataMutex; + std::vector opacity; renderer_test(renderer* parent):renderer_wrap(parent) { + reinitOpacity(); } virtual void update_tile(int32_t x, int32_t y) { renderer_wrap::update_tile(x,y); + tthread::lock_guard guard(dataMutex); + colorizeTile(x,y); //some sort of mutex or sth? //and then map read }; virtual void update_all() { renderer_wrap::update_all(); + tthread::lock_guard guard(dataMutex); + for (int x = 0; x < df::global::gps->dimx; x++) + for (int y = 0; y < df::global::gps->dimy; y++) + colorizeTile(x,y); //some sort of mutex or sth? //and then map read //same stuff for all of them i guess... }; + virtual void grid_resize(int32_t w, int32_t h) { + renderer_wrap::grid_resize(w,h); + reinitOpacity(w,h); + }; + virtual void resize(int32_t w, int32_t h) { + renderer_wrap::resize(w,h); + reinitOpacity(w,h); + } }; \ No newline at end of file diff --git a/plugins/rendermax/rendermax.cpp b/plugins/rendermax/rendermax.cpp new file mode 100644 index 000000000..69709ac96 --- /dev/null +++ b/plugins/rendermax/rendermax.cpp @@ -0,0 +1,99 @@ +#include +#include + +#include "Core.h" +#include "Console.h" +#include "Export.h" +#include "PluginManager.h" + +#include +#include "df/renderer.h" +#include "df/enabler.h" + +#include "renderer_opengl.hpp" + +using namespace DFHack; +using std::vector; +using std::string; +enum RENDERER_MODE +{ + MODE_DEFAULT,MODE_TRIPPY,MODE_TRUECOLOR +}; +RENDERER_MODE current_mode=MODE_DEFAULT; +static command_result rendermax(color_ostream &out, vector & parameters); + +DFHACK_PLUGIN("rendermax"); + + +DFhackCExport command_result plugin_init (color_ostream &out, std::vector &commands) +{ + commands.push_back(PluginCommand( + "rendermax", "switch rendering engine.", rendermax, false, + " rendermax trippy\n" + " rendermax disable\n" + )); + return CR_OK; +} +void removeOld() +{ + if(current_mode!=MODE_DEFAULT) + delete df::global::enabler->renderer; + current_mode=MODE_DEFAULT; +} +void installNew(df::renderer* r,RENDERER_MODE newMode) +{ + df::global::enabler->renderer=r; + current_mode=newMode; +} +static command_result rendermax(color_ostream &out, vector & parameters) +{ + if(parameters.size()==0) + return CR_WRONG_USAGE; + string cmd=parameters[0]; + if(cmd=="trippy") + { + removeOld(); + installNew(new renderer_trippy(df::global::enabler->renderer),MODE_TRIPPY); + return CR_OK; + } + else if(cmd=="test") + { + if(current_mode==MODE_TRUECOLOR && parameters.size()==2) + { + renderer_test* r=reinterpret_cast(df::global::enabler->renderer); + tthread::lock_guard guard(r->dataMutex); + int h=df::global::gps->dimy; + int w=df::global::gps->dimx; + int cx=w/2; + int cy=h/2; + int rad=cx; + if(rad>cy)rad=cy; + rad/=2; + int radsq=rad*rad; + for(int i=-rad;iopacity[(cx+i)*h+(cy+j)]=(radsq-i*i-j*j)/(float)radsq; + } + return CR_OK; + } + else + { + removeOld(); + installNew(new renderer_test(df::global::enabler->renderer),MODE_TRUECOLOR); + return CR_OK; + } + + } + else if(cmd=="disable") + { + if(current_mode==MODE_DEFAULT) + out.print("%s\n","Not installed, doing nothing."); + else + removeOld(); + + return CR_OK; + } + return CR_WRONG_USAGE; +} \ No newline at end of file From 906864feaae877fd4d264f17046a155d72eb4173 Mon Sep 17 00:00:00 2001 From: Warmist Date: Sat, 22 Jun 2013 14:14:35 +0300 Subject: [PATCH 06/72] Added help for truecolor light testing thing. Also added colors. --- plugins/rendermax/renderer_opengl.hpp | 51 +++++++++++++++++++-------- plugins/rendermax/rendermax.cpp | 35 +++++++++++++----- 2 files changed, 63 insertions(+), 23 deletions(-) diff --git a/plugins/rendermax/renderer_opengl.hpp b/plugins/rendermax/renderer_opengl.hpp index 09d96ae45..525460b71 100644 --- a/plugins/rendermax/renderer_opengl.hpp +++ b/plugins/rendermax/renderer_opengl.hpp @@ -166,6 +166,27 @@ public: colorizeTile(x,y); }; }; + +struct lightCell +{ + float r,g,b; + lightCell():r(0),g(0),b(0) + { + + } + lightCell(float r,float g,float b):r(r),g(g),b(b) + { + + } + lightCell operator*(float val) + { + return lightCell(r*val,g*val,b*val); + } + lightCell operator+(const lightCell& other) + { + return lightCell(r+other.r,g+other.g,b+other.b); + } +}; struct renderer_test : public renderer_wrap { private: void colorizeTile(int x,int y) @@ -175,34 +196,34 @@ private: float *fg = p->fg + tile * 4 * 6; float *bg = p->bg + tile * 4 * 6; float *tex = p->tex + tile * 2 * 6; - float v=opacity[tile]; + lightCell light=lightGrid[tile]; for (int i = 0; i < 6; i++) { - *(fg++) *= v; - *(fg++) *= v; - *(fg++) *= v; + *(fg++) *= light.r; + *(fg++) *= light.g; + *(fg++) *= light.b; *(fg++) = 1; - *(bg++) *= v; - *(bg++) *= v; - *(bg++) *= v; + *(bg++) *= light.r; + *(bg++) *= light.g; + *(bg++) *= light.b; *(bg++) = 1; } } - void reinitOpacity(int w,int h) + void reinitLightGrid(int w,int h) { tthread::lock_guard guard(dataMutex); - opacity.resize(w*h); + lightGrid.resize(w*h); } - void reinitOpacity() + void reinitLightGrid() { - reinitOpacity(df::global::gps->dimy,df::global::gps->dimx); + reinitLightGrid(df::global::gps->dimy,df::global::gps->dimx); } public: tthread::fast_mutex dataMutex; - std::vector opacity; + std::vector lightGrid; renderer_test(renderer* parent):renderer_wrap(parent) { - reinitOpacity(); + reinitLightGrid(); } virtual void update_tile(int32_t x, int32_t y) { renderer_wrap::update_tile(x,y); @@ -223,10 +244,10 @@ public: }; virtual void grid_resize(int32_t w, int32_t h) { renderer_wrap::grid_resize(w,h); - reinitOpacity(w,h); + reinitLightGrid(w,h); }; virtual void resize(int32_t w, int32_t h) { renderer_wrap::resize(w,h); - reinitOpacity(w,h); + reinitLightGrid(w,h); } }; \ No newline at end of file diff --git a/plugins/rendermax/rendermax.cpp b/plugins/rendermax/rendermax.cpp index 69709ac96..85232cde9 100644 --- a/plugins/rendermax/rendermax.cpp +++ b/plugins/rendermax/rendermax.cpp @@ -30,6 +30,7 @@ DFhackCExport command_result plugin_init (color_ostream &out, std::vector & parameters installNew(new renderer_trippy(df::global::enabler->renderer),MODE_TRIPPY); return CR_OK; } - else if(cmd=="test") + else if(cmd=="truecolor") { + if(current_mode!=MODE_TRUECOLOR) + { + removeOld(); + installNew(new renderer_test(df::global::enabler->renderer),MODE_TRUECOLOR); + } if(current_mode==MODE_TRUECOLOR && parameters.size()==2) { + lightCell red(1,0,0),green(0,1,0),blue(0,0,1),white(1,1,1); + lightCell cur=white; + lightCell dim(0.2,0.2,0.2); + string col=parameters[1]; + if(col=="red") + cur=red; + else if(col=="green") + cur=green; + else if(col=="blue") + cur=blue; + renderer_test* r=reinterpret_cast(df::global::enabler->renderer); tthread::lock_guard guard(r->dataMutex); int h=df::global::gps->dimy; @@ -70,20 +87,22 @@ static command_result rendermax(color_ostream &out, vector & parameters if(rad>cy)rad=cy; rad/=2; int radsq=rad*rad; + for(size_t i=0;ilightGrid.size();i++) + { + r->lightGrid[i]=dim; + } for(int i=-rad;iopacity[(cx+i)*h+(cy+j)]=(radsq-i*i-j*j)/(float)radsq; + { + float val=(radsq-i*i-j*j)/(float)radsq; + r->lightGrid[(cx+i)*h+(cy+j)]=dim+cur*val; + } } return CR_OK; } - else - { - removeOld(); - installNew(new renderer_test(df::global::enabler->renderer),MODE_TRUECOLOR); - return CR_OK; - } + } else if(cmd=="disable") From 4cc14641ac709221a2ab6ba4a3d09d0f5eff3ae4 Mon Sep 17 00:00:00 2001 From: Warmist Date: Sat, 22 Jun 2013 17:40:52 +0300 Subject: [PATCH 07/72] Implemented lua interface. --- plugins/rendermax/CMakeLists.txt | 2 + plugins/rendermax/renderer_opengl.hpp | 83 +++++++++++++ plugins/rendermax/rendermax.cpp | 168 +++++++++++++++++++++++++- 3 files changed, 250 insertions(+), 3 deletions(-) diff --git a/plugins/rendermax/CMakeLists.txt b/plugins/rendermax/CMakeLists.txt index c781bde48..a7422a2cd 100644 --- a/plugins/rendermax/CMakeLists.txt +++ b/plugins/rendermax/CMakeLists.txt @@ -19,12 +19,14 @@ IF(UNIX) add_definitions(-DLINUX_BUILD) SET(PROJECT_LIBS # add any extra linux libs here + lua ${PROJECT_LIBS} ) # windows ELSE(UNIX) SET(PROJECT_LIBS # add any extra windows libs here + lua ${PROJECT_LIBS} $(NOINHERIT) ) diff --git a/plugins/rendermax/renderer_opengl.hpp b/plugins/rendermax/renderer_opengl.hpp index 525460b71..1cd9d1bac 100644 --- a/plugins/rendermax/renderer_opengl.hpp +++ b/plugins/rendermax/renderer_opengl.hpp @@ -250,4 +250,87 @@ public: renderer_wrap::resize(w,h); reinitLightGrid(w,h); } +}; + +struct rgba +{ + float r,g,b,a; +}; +struct renderer_lua : public renderer_wrap { +private: + void overwriteTile(int x,int y) + { + const int tile = xyToTile(x,y); + old_opengl* p=reinterpret_cast(parent); + float *fg = p->fg + tile * 4 * 6; + float *bg = p->bg + tile * 4 * 6; + float *tex = p->tex + tile * 2 * 6; + lightCell fm=foreMult[tile]; + lightCell fo=foreOffset[tile]; + + lightCell bm=backMult[tile]; + lightCell bo=backOffset[tile]; + for (int i = 0; i < 6; i++) { + rgba* fore=reinterpret_cast(fg); + fore->r=fore->r*fm.r+fo.r; + fore->g=fore->g*fm.g+fo.g; + fore->b=fore->b*fm.b+fo.b; + + fg+=4; + rgba* back=reinterpret_cast(bg); + back->r=back->r*bm.r+bo.r; + back->g=back->g*bm.g+bo.g; + back->b=back->b*bm.b+bo.b; + bg+=4; + } + } + void reinitGrids(int w,int h) + { + tthread::lock_guard guard(dataMutex); + foreOffset.resize(w*h); + foreMult.resize(w*h); + backOffset.resize(w*h); + backMult.resize(w*h); + } + void reinitGrids() + { + reinitGrids(df::global::gps->dimy,df::global::gps->dimx); + } +public: + tthread::fast_mutex dataMutex; + std::vector foreOffset,foreMult; + std::vector backOffset,backMult; + inline int xyToTile(int x, int y) + { + return x*(df::global::gps->dimy) + y; + } + renderer_lua(renderer* parent):renderer_wrap(parent) + { + reinitGrids(); + } + virtual void update_tile(int32_t x, int32_t y) { + renderer_wrap::update_tile(x,y); + tthread::lock_guard guard(dataMutex); + overwriteTile(x,y); + //some sort of mutex or sth? + //and then map read + }; + virtual void update_all() { + renderer_wrap::update_all(); + tthread::lock_guard guard(dataMutex); + for (int x = 0; x < df::global::gps->dimx; x++) + for (int y = 0; y < df::global::gps->dimy; y++) + overwriteTile(x,y); + //some sort of mutex or sth? + //and then map read + //same stuff for all of them i guess... + }; + virtual void grid_resize(int32_t w, int32_t h) { + renderer_wrap::grid_resize(w,h); + reinitGrids(w,h); + }; + virtual void resize(int32_t w, int32_t h) { + renderer_wrap::resize(w,h); + reinitGrids(w,h); + } }; \ No newline at end of file diff --git a/plugins/rendermax/rendermax.cpp b/plugins/rendermax/rendermax.cpp index 85232cde9..cc4b77301 100644 --- a/plugins/rendermax/rendermax.cpp +++ b/plugins/rendermax/rendermax.cpp @@ -1,6 +1,8 @@ #include #include +#include + #include "Core.h" #include "Console.h" #include "Export.h" @@ -17,7 +19,7 @@ using std::vector; using std::string; enum RENDERER_MODE { - MODE_DEFAULT,MODE_TRIPPY,MODE_TRUECOLOR + MODE_DEFAULT,MODE_TRIPPY,MODE_TRUECOLOR,MODE_LUA }; RENDERER_MODE current_mode=MODE_DEFAULT; static command_result rendermax(color_ostream &out, vector & parameters); @@ -46,6 +48,159 @@ void installNew(df::renderer* r,RENDERER_MODE newMode) df::global::enabler->renderer=r; current_mode=newMode; } +static void lockGrids() +{ + if(current_mode!=MODE_LUA) + return ; + renderer_lua* r=reinterpret_cast(df::global::enabler->renderer); + r->dataMutex.lock(); +} +static void unlockGrids() +{ + if(current_mode!=MODE_LUA) + return ; + renderer_lua* r=reinterpret_cast(df::global::enabler->renderer); + r->dataMutex.unlock(); +} +static void resetGrids() +{ + if(current_mode!=MODE_LUA) + return ; + renderer_lua* r=reinterpret_cast(df::global::enabler->renderer); + for(size_t i=0;iforeMult.size();i++) + { + r->foreMult[i]=lightCell(1,1,1); + r->foreOffset[i]=lightCell(0,0,0); + r->backMult[i]=lightCell(1,1,1); + r->backOffset[i]=lightCell(0,0,0); + } +} +static int getGridsSize() +{ + if(current_mode!=MODE_LUA) + return -1; + renderer_lua* r=reinterpret_cast(df::global::enabler->renderer); + lua_pushnumber(L,df::global::gps->dimx); + lua_pushnumber(L,df::global::gps->dimy); + return 2; +} +static int getCell(lua_State* L) +{ + if(current_mode!=MODE_LUA) + return 0; + renderer_lua* r=reinterpret_cast(df::global::enabler->renderer); + int x=luaL_checknumber(L,1); + int y=luaL_checknumber(L,2); + int id=r->xyToTile(x,y); + lightCell fo=r->foreOffset[id]; + lightCell fm=r->foreMult[id]; + lightCell bo=r->backOffset[id]; + lightCell bm=r->backMult[id]; + lua_newtable(L); + + lua_newtable(L); + lua_pushnumber(L,fo.r); + lua_setfield(L,-2,"r"); + lua_pushnumber(L,fo.g); + lua_setfield(L,-2,"g"); + lua_pushnumber(L,fo.b); + lua_setfield(L,-2,"b"); + lua_setfield(L,-2,"fo"); + + lua_newtable(L); + lua_pushnumber(L,fm.r); + lua_setfield(L,-2,"r"); + lua_pushnumber(L,fm.g); + lua_setfield(L,-2,"g"); + lua_pushnumber(L,fm.b); + lua_setfield(L,-2,"b"); + lua_setfield(L,-2,"fm"); + + lua_newtable(L); + lua_pushnumber(L,bo.r); + lua_setfield(L,-2,"r"); + lua_pushnumber(L,bo.g); + lua_setfield(L,-2,"g"); + lua_pushnumber(L,bo.b); + lua_setfield(L,-2,"b"); + lua_setfield(L,-2,"bo"); + + lua_newtable(L); + lua_pushnumber(L,bm.r); + lua_setfield(L,-2,"r"); + lua_pushnumber(L,bm.g); + lua_setfield(L,-2,"g"); + lua_pushnumber(L,bm.b); + lua_setfield(L,-2,"b"); + lua_setfield(L,-2,"bm"); + return 1; +} +static int setCell(lua_State* L) +{ + if(current_mode!=MODE_LUA) + return 0; + renderer_lua* r=reinterpret_cast(df::global::enabler->renderer); + int x=luaL_checknumber(L,1); + int y=luaL_checknumber(L,2); + + lightCell fo; + lua_getfield(L,3,"fo"); + lua_getfield(L,-1,"r"); + fo.r=lua_tonumber(L,-1);lua_pop(L,1); + lua_getfield(L,-1,"g"); + fo.g=lua_tonumber(L,-1);lua_pop(L,1); + lua_getfield(L,-1,"b"); + fo.b=lua_tonumber(L,-1);lua_pop(L,1); + lightCell fm; + lua_getfield(L,3,"fm"); + lua_getfield(L,-1,"r"); + fm.r=lua_tonumber(L,-1);lua_pop(L,1); + lua_getfield(L,-1,"g"); + fm.g=lua_tonumber(L,-1);lua_pop(L,1); + lua_getfield(L,-1,"b"); + fm.b=lua_tonumber(L,-1);lua_pop(L,1); + + lightCell bo; + lua_getfield(L,3,"bo"); + lua_getfield(L,-1,"r"); + bo.r=lua_tonumber(L,-1);lua_pop(L,1); + lua_getfield(L,-1,"g"); + bo.g=lua_tonumber(L,-1);lua_pop(L,1); + lua_getfield(L,-1,"b"); + bo.b=lua_tonumber(L,-1);lua_pop(L,1); + + lightCell bm; + lua_getfield(L,3,"bm"); + lua_getfield(L,-1,"r"); + bm.r=lua_tonumber(L,-1);lua_pop(L,1); + lua_getfield(L,-1,"g"); + bm.g=lua_tonumber(L,-1);lua_pop(L,1); + lua_getfield(L,-1,"b"); + bm.b=lua_tonumber(L,-1);lua_pop(L,1); + int id=r->xyToTile(x,y); + r->foreMult[id]=fm; + r->foreOffset[id]=fo; + r->backMult[id]=bm; + r->backOffset[id]=bo; + return 0; +} +bool isEnabled() +{ + return current_mode==MODE_LUA; +} +DFHACK_PLUGIN_LUA_FUNCTIONS { + DFHACK_LUA_FUNCTION(isEnabled), + DFHACK_LUA_FUNCTION(lockGrids), + DFHACK_LUA_FUNCTION(unlockGrids), + DFHACK_LUA_FUNCTION(getGridsSize), + DFHACK_LUA_FUNCTION(resetGrids), + DFHACK_LUA_END +}; +DFHACK_PLUGIN_LUA_COMMANDS { + DFHACK_LUA_COMMAND(getCell), + DFHACK_LUA_COMMAND(setCell), + DFHACK_LUA_END +}; static command_result rendermax(color_ostream &out, vector & parameters) { if(parameters.size()==0) @@ -102,8 +257,15 @@ static command_result rendermax(color_ostream &out, vector & parameters } return CR_OK; } - - + } + else if(cmd=="lua") + { + removeOld(); + installNew(new renderer_lua(df::global::enabler->renderer),MODE_LUA); + lockGrids(); + resetGrids(); + unlockGrids(); + return CR_OK; } else if(cmd=="disable") { From 17cf52206a5941d73768fe70dfdd95c8522755dd Mon Sep 17 00:00:00 2001 From: Warmist Date: Sat, 22 Jun 2013 23:18:09 +0300 Subject: [PATCH 08/72] Added light script. Can be ran with "static" to recalculate only on '~' press. --- scripts/devel/light.lua | 238 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 238 insertions(+) create mode 100644 scripts/devel/light.lua diff --git a/scripts/devel/light.lua b/scripts/devel/light.lua new file mode 100644 index 000000000..4152876ae --- /dev/null +++ b/scripts/devel/light.lua @@ -0,0 +1,238 @@ +-- an experimental lighting engine for df +local gui = require 'gui' +local guidm = require 'gui.dwarfmode' +local render = require 'plugins.rendermax' + +local levelDim=0.05 +local tile_attrs = df.tiletype.attrs + +local args={...} + +function setCell(x,y,cell) + cell=cell or {} + cell.fm=cell.fm or {r=1,g=1,b=1} + cell.bm=cell.bm or {r=1,g=1,b=1} + cell.fo=cell.fo or {r=0,g=0,b=0} + cell.bo=cell.bo or {r=0,g=0,b=0} + render.setCell(x,y,cell) +end +function getCursorPos() + local g_cursor=df.global.cursor + if g_cursor.x ~= -30000 then + return copyall(g_cursor) + end +end +function falloff(color,sqDist,maxdist) + local v1=1/(sqDist/maxdist+1) + local v2=v1-1/(1+maxdist*maxdist) + local v=v2/(1-1/(1+maxdist*maxdist)) + return {r=v*color.r,g=v*color.g,b=v*color.b} +end +function blend(c1,c2) +return {r=math.max(c1.r,c2.r), + g=math.max(c1.g,c2.g), + b=math.max(c1.b,c2.b)} +end +LightOverlay=defclass(LightOverlay,guidm.DwarfOverlay) +LightOverlay.ATTRS { + lightMap={}, + dynamic=true +} +function LightOverlay.init(args) +end + +function lightPassable(shape) + if shape==df.tiletype_shape.WALL or + shape==df.tiletype_shape.BROOK_BED or + shape==df.tiletype_shape.TREE then + return false + else + return true + end +end +function LightOverlay:placeLightFov(pos,radius,color,f,rays) + f=f or falloff + local raycount=rays or 25 + local vp=self:getViewport() + local map = self.df_layout.map + local off=math.random(0,math.pi) + local done={} + for d=0,math.pi*2,math.pi*2/raycount do + local dx,dy + dx=math.cos(d+off) + dy=math.sin(d+off) + local cx=0 + local cy=0 + + for dt=0,radius,0.01 do + if math.abs(math.floor(dt*dx)-cx)>0 or math.abs(math.floor(dt*dy)-cy)> 0then + local x=cx+pos.x + local y=cy+pos.y + + if x>0 and y>0 and x<=map.width and y<=map.height and not done[tile] then + local tile=x+y*map.width + done[tile]=true + local ncol=f(color,dt*dt,radius) + local ocol=self.lightMap[tile] or {r=0,g=0,b=0} + ncol=blend(ncol,ocol) + self.lightMap[tile]=ncol + + + if --(ncol.r==ocol.r and ncol.g==ocol.g and ncol.b==ocol.b) or + not self.ocupancy[tile] then + break + end + end + cx=math.floor(dt*dx) + cy=math.floor(dt*dy) + end + end + end +end +function LightOverlay:placeLight(pos,radius,color,f) + f=f or falloff + local vp=self:getViewport() + local map = self.df_layout.map + + for i=-radius,radius do + for j=-radius,radius do + local x=pos.x+i+1 + local y=pos.y+j+1 + if x>0 and y>0 and x<=map.width and y<=map.height then + local tile=x+y*map.width + local ncol=f(color,(i*i+j*j),radius) + local ocol=self.lightMap[tile] or {r=0,g=0,b=0} + self.lightMap[tile]=blend(ncol,ocol) + end + end + end +end +function LightOverlay:calculateLightLava() + local vp=self:getViewport() + local map = self.df_layout.map + for i=map.x1,map.x2 do + for j=map.y1,map.y2 do + local pos={x=i+vp.x1-1,y=j+vp.y1-1,z=vp.z} + local pos2={x=i+vp.x1-1,y=j+vp.y1-1,z=vp.z-1} + local t1=dfhack.maps.getTileFlags(pos) + local shape=tile_attrs[dfhack.maps.getTileType(pos)].shape + local t2=dfhack.maps.getTileFlags(pos2) + if (t1 and t1.liquid_type and t1.flow_size>0) or + (shape==df.tiletype_shape.EMPTY and t2 and t2.liquid_type and t2.flow_size>0) then + --self:placeLight({x=i,y=j},5,{r=0.8,g=0.2,b=0.2}) + self:placeLightFov({x=i,y=j},5,{r=0.8,g=0.2,b=0.2},nil,5) + end + end + end +end +function LightOverlay:calculateLightSun() + local vp=self:getViewport() + local map = self.df_layout.map + for i=map.x1,map.x2+1 do + for j=map.y1,map.y2+1 do + local pos={x=i+vp.x1-1,y=j+vp.y1-1,z=vp.z} + + local t1=dfhack.maps.getTileFlags(pos) + + if (t1 and t1.outside ) then + + self:placeLightFov({x=i,y=j},7,{r=1,g=1,b=1},nil,3) + end + end + end +end +function LightOverlay:calculateLightCursor() + local c=getCursorPos() + + if c then + + local vp=self:getViewport() + local pos=vp:tileToScreen(c) + --self:placeLight(pos,11,{r=0.96,g=0.84,b=0.03}) + self:placeLightFov({x=pos.x+1,y=pos.y+1},11,{r=0.96,g=0.84,b=0.03}) + + end +end +function LightOverlay:buildOcupancy() + self.ocupancy={} + local vp=self:getViewport() + local map = self.df_layout.map + for i=map.x1,map.x2+1 do + for j=map.y1,map.y2+1 do + local pos={x=i+vp.x1-1,y=j+vp.y1-1,z=vp.z} + local tile=i+j*map.width + local tt=dfhack.maps.getTileType(pos) + + if tt then + local shape=tile_attrs[tt].shape + self.ocupancy[tile]=lightPassable(shape) + end + end + end + +end +function LightOverlay:makeLightMap() + self.lightMap={} + self:buildOcupancy() + self:calculateLightCursor() + self:calculateLightLava() + self:calculateLightSun() +end +function LightOverlay:onIdle() + self._native.parent:logic() + if self.dynamic then + self:makeLightMap() + end +end +function LightOverlay:render(dc) + + + self:renderParent() + local vp=self:getViewport() + local map = self.df_layout.map + + self.lightMap=self.lightMap or {} + render.lockGrids() + df.global.gps.force_full_display_count=df.global.gps.force_full_display_count+1 + render.resetGrids() + for i=map.x1,map.x2 do + for j=map.y1,map.y2 do + local v=self.lightMap[i+j*map.width] + if v then + setCell(i,j,{fm=v,bm=v}) + else + local dimRgb={r=levelDim,g=levelDim,b=levelDim} + setCell(i,j,{fm=dimRgb,bm=dimRgb}) + end + end + end + render.unlockGrids() + +end +function LightOverlay:onDismiss() + render.lockGrids() + render.resetGrids() + render.unlockGrids() + df.global.gps.force_full_display_count=df.global.gps.force_full_display_count+1 +end +function LightOverlay:onInput(keys) + if keys.LEAVESCREEN then + self:dismiss() + else + self:sendInputToParent(keys) + + if keys.CHANGETAB then + self:updateLayout() + end + if keys.STRING_A126 and not self.dynamic then + self:makeLightMap() + end + end +end +if not render.isEnabled() then + qerror("Lua rendermode not enabled!") +end +local dyn=true +if #args>0 and args[1]=="static" then dyn=false end +local lview = LightOverlay{ dynamic=dyn} +lview:show() \ No newline at end of file From 3c386cb27cb4e09a2e4df78d95951b71bdf7a09d Mon Sep 17 00:00:00 2001 From: Japa Date: Sun, 23 Jun 2013 02:43:49 +0530 Subject: [PATCH 09/72] Added git ignore. --- clients/unity/simple_sample/Library/.gitignore | 1 + .../unity/simple_sample/Library/expandedItems | Bin 4140 -> 0 bytes 2 files changed, 1 insertion(+) create mode 100644 clients/unity/simple_sample/Library/.gitignore delete mode 100644 clients/unity/simple_sample/Library/expandedItems diff --git a/clients/unity/simple_sample/Library/.gitignore b/clients/unity/simple_sample/Library/.gitignore new file mode 100644 index 000000000..ec8ae3730 --- /dev/null +++ b/clients/unity/simple_sample/Library/.gitignore @@ -0,0 +1 @@ +expandedItems diff --git a/clients/unity/simple_sample/Library/expandedItems b/clients/unity/simple_sample/Library/expandedItems deleted file mode 100644 index a2aaaef39e5895dcbc0aaa5ff101d3bbc9235990..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4140 zcmeH~%TB{E5JiXbe)9>y8dWNf9YO-3s$Eg3VjY>pr9o*^C0?}rC%;3O>tw1F`4eWO z#EyMD<9p+ci8?<-7dJ$7$SpTS_uXFiVbY`Ds;aj5yR$eJZlgOWKn4y+2z8_6Px&~9iBu8fcCj4 z%&K{#@^&*X4AzY6%4Pa(eK8b72!sA;ND=u znCFCTs?MU3anpv|4{(rK+Keqp^SRfF$_UAX_P Date: Sun, 23 Jun 2013 09:19:29 +0300 Subject: [PATCH 10/72] Fixed bug. --- plugins/rendermax/rendermax.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/plugins/rendermax/rendermax.cpp b/plugins/rendermax/rendermax.cpp index cc4b77301..89449f5be 100644 --- a/plugins/rendermax/rendermax.cpp +++ b/plugins/rendermax/rendermax.cpp @@ -33,6 +33,7 @@ DFhackCExport command_result plugin_init (color_ostream &out, std::vector backOffset[i]=lightCell(0,0,0); } } -static int getGridsSize() +static int getGridsSize(lua_State* L) { if(current_mode!=MODE_LUA) return -1; @@ -192,13 +193,13 @@ DFHACK_PLUGIN_LUA_FUNCTIONS { DFHACK_LUA_FUNCTION(isEnabled), DFHACK_LUA_FUNCTION(lockGrids), DFHACK_LUA_FUNCTION(unlockGrids), - DFHACK_LUA_FUNCTION(getGridsSize), DFHACK_LUA_FUNCTION(resetGrids), DFHACK_LUA_END }; DFHACK_PLUGIN_LUA_COMMANDS { DFHACK_LUA_COMMAND(getCell), DFHACK_LUA_COMMAND(setCell), + DFHACK_LUA_COMMAND(getGridsSize), DFHACK_LUA_END }; static command_result rendermax(color_ostream &out, vector & parameters) From 76f4c51a29207aec176f949c470ea39e08618512 Mon Sep 17 00:00:00 2001 From: Warmist Date: Sun, 23 Jun 2013 09:36:04 +0300 Subject: [PATCH 11/72] Another file forgotten --- plugins/lua/rendermax.lua | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 plugins/lua/rendermax.lua diff --git a/plugins/lua/rendermax.lua b/plugins/lua/rendermax.lua new file mode 100644 index 000000000..d44027c16 --- /dev/null +++ b/plugins/lua/rendermax.lua @@ -0,0 +1,4 @@ +local _ENV = mkmodule('plugins.rendermax') + + +return _ENV \ No newline at end of file From e3ee876a111f633d0290bc87056a49225bae8e98 Mon Sep 17 00:00:00 2001 From: Warmist Date: Sun, 23 Jun 2013 12:20:35 +0300 Subject: [PATCH 12/72] New line algo for lights --- plugins/rendermax/renderer_opengl.hpp | 13 ++++ plugins/rendermax/rendermax.cpp | 25 +++++++ scripts/devel/light.lua | 97 ++++++++++++++++++++++++--- 3 files changed, 126 insertions(+), 9 deletions(-) diff --git a/plugins/rendermax/renderer_opengl.hpp b/plugins/rendermax/renderer_opengl.hpp index 1cd9d1bac..c6d9d2e63 100644 --- a/plugins/rendermax/renderer_opengl.hpp +++ b/plugins/rendermax/renderer_opengl.hpp @@ -114,6 +114,19 @@ public: virtual bool uses_opengl() { return parent->uses_opengl(); }; + void invalidateRect(int32_t x,int32_t y,int32_t w,int32_t h) + { + for(int i=x;idimy + j; + screen_old[index*4]=screen[index*4]+1; + } + }; + void invalidate() + { + invalidateRect(0,0,df::global::gps->dimx,df::global::gps->dimy); + }; protected: renderer* parent; }; diff --git a/plugins/rendermax/rendermax.cpp b/plugins/rendermax/rendermax.cpp index 89449f5be..190e5f421 100644 --- a/plugins/rendermax/rendermax.cpp +++ b/plugins/rendermax/rendermax.cpp @@ -185,6 +185,30 @@ static int setCell(lua_State* L) r->backOffset[id]=bo; return 0; } +static int invalidate(lua_State* L) +{ + if(current_mode!=MODE_LUA) + return 0; + renderer_lua* r=reinterpret_cast(df::global::enabler->renderer); + if(lua_gettop(L)==0) + { + r->invalidate(); + } + else + { + int x,y,w,h; + lua_getfield(L,1,"x"); + x=lua_tonumber(L,-1);lua_pop(L,1); + lua_getfield(L,1,"y"); + y=lua_tonumber(L,-1);lua_pop(L,1); + lua_getfield(L,1,"w"); + w=lua_tonumber(L,-1);lua_pop(L,1); + lua_getfield(L,1,"h"); + h=lua_tonumber(L,-1);lua_pop(L,1); + r->invalidateRect(x,y,w,h); + } + return 0; +} bool isEnabled() { return current_mode==MODE_LUA; @@ -200,6 +224,7 @@ DFHACK_PLUGIN_LUA_COMMANDS { DFHACK_LUA_COMMAND(getCell), DFHACK_LUA_COMMAND(setCell), DFHACK_LUA_COMMAND(getGridsSize), + DFHACK_LUA_COMMAND(invalidate), DFHACK_LUA_END }; static command_result rendermax(color_ostream &out, vector & parameters) diff --git a/scripts/devel/light.lua b/scripts/devel/light.lua index 4152876ae..ff5580610 100644 --- a/scripts/devel/light.lua +++ b/scripts/devel/light.lua @@ -50,7 +50,82 @@ function lightPassable(shape) return true end end -function LightOverlay:placeLightFov(pos,radius,color,f,rays) +function circle(xm, ym,r,plot) + local x = -r + local y = 0 + local err = 2-2*r -- /* II. Quadrant */ + repeat + plot(xm-x, ym+y);--/* I. Quadrant */ + plot(xm-y, ym-x);--/* II. Quadrant */ + plot(xm+x, ym-y);--/* III. Quadrant */ + plot(xm+y, ym+x);--/* IV. Quadrant */ + r = err; + if (r <= y) then + y=y+1 + err =err+y*2+1; --/* e_xy+e_y < 0 */ + end + if (r > x or err > y) then + x=x+1 + err =err+x*2+1; --/* e_xy+e_x > 0 or no 2nd y-step */ + end + until (x >= 0); +end +function line(x0, y0, x1, y1,plot) + local dx = math.abs(x1-x0) + local dy = math.abs(y1-y0) + local sx,sy + if x0 < x1 then sx = 1 else sx = -1 end + if y0 < y1 then sy = 1 else sy = -1 end + local err = dx-dy + + while true do + if not plot(x0,y0) then + return + end + if x0 == x1 and y0 == y1 then + break + end + local e2 = 2*err + if e2 > -dy then + err = err - dy + x0 = x0 + sx + end + if x0 == x1 and y0 == y1 then + if not plot(x0,y0) then + return + end + break + end + if e2 < dx then + err = err + dx + y0 = y0 + sy + end + end +end +function LightOverlay:placeLightFov(pos,radius,color,f) + f=f or falloff + local vp=self:getViewport() + local map = self.df_layout.map + local ray=function(tx,ty) + + local setTile=function(x,y) + if x>0 and y>0 and x<=map.width and y<=map.height then + local dtsq=(pos.x-x)*(pos.x-x)+(pos.y-y)*(pos.y-y) + local tile=x+y*map.width + local ncol=f(color,dtsq,radius) + local ocol=self.lightMap[tile] or {r=0,g=0,b=0} + ncol=blend(ncol,ocol) + self.lightMap[tile]=ncol + + return self.ocupancy[tile] + end + return false + end + line(pos.x,pos.y,tx,ty,setTile) + end + circle(pos.x,pos.y,radius,ray) +end +function LightOverlay:placeLightFov2(pos,radius,color,f,rays) f=f or falloff local raycount=rays or 25 local vp=self:getViewport() @@ -115,12 +190,15 @@ function LightOverlay:calculateLightLava() local pos={x=i+vp.x1-1,y=j+vp.y1-1,z=vp.z} local pos2={x=i+vp.x1-1,y=j+vp.y1-1,z=vp.z-1} local t1=dfhack.maps.getTileFlags(pos) - local shape=tile_attrs[dfhack.maps.getTileType(pos)].shape - local t2=dfhack.maps.getTileFlags(pos2) - if (t1 and t1.liquid_type and t1.flow_size>0) or - (shape==df.tiletype_shape.EMPTY and t2 and t2.liquid_type and t2.flow_size>0) then - --self:placeLight({x=i,y=j},5,{r=0.8,g=0.2,b=0.2}) - self:placeLightFov({x=i,y=j},5,{r=0.8,g=0.2,b=0.2},nil,5) + local tt=dfhack.maps.getTileType(pos) + if tt then + local shape=tile_attrs[tt].shape + local t2=dfhack.maps.getTileFlags(pos2) + if (t1 and t1.liquid_type and t1.flow_size>0) or + (shape==df.tiletype_shape.EMPTY and t2 and t2.liquid_type and t2.flow_size>0) then + --self:placeLight({x=i,y=j},5,{r=0.8,g=0.2,b=0.2}) + self:placeLightFov({x=i,y=j},5,{r=0.8,g=0.2,b=0.2},nil,5) + end end end end @@ -193,7 +271,7 @@ function LightOverlay:render(dc) self.lightMap=self.lightMap or {} render.lockGrids() - df.global.gps.force_full_display_count=df.global.gps.force_full_display_count+1 + render.invalidate({x=map.x1,y=map.y1,w=map.width,h=map.height}) render.resetGrids() for i=map.x1,map.x2 do for j=map.y1,map.y2 do @@ -212,8 +290,9 @@ end function LightOverlay:onDismiss() render.lockGrids() render.resetGrids() + render.invalidate() render.unlockGrids() - df.global.gps.force_full_display_count=df.global.gps.force_full_display_count+1 + end function LightOverlay:onInput(keys) if keys.LEAVESCREEN then From f7f70f40629b2ae2b79fa4eabf1401a38442243a Mon Sep 17 00:00:00 2001 From: Warmist Date: Sun, 23 Jun 2013 12:55:14 +0300 Subject: [PATCH 13/72] Light now fallsoff according to tile contents (water for now only) --- scripts/devel/light.lua | 36 +++++++++++++++++++++++++++--------- 1 file changed, 27 insertions(+), 9 deletions(-) diff --git a/scripts/devel/light.lua b/scripts/devel/light.lua index ff5580610..f3d39e4db 100644 --- a/scripts/devel/light.lua +++ b/scripts/devel/light.lua @@ -107,17 +107,28 @@ function LightOverlay:placeLightFov(pos,radius,color,f) local vp=self:getViewport() local map = self.df_layout.map local ray=function(tx,ty) - + local power=copyall(color) + local lx=pos.x + local ly=pos.y local setTile=function(x,y) if x>0 and y>0 and x<=map.width and y<=map.height then - local dtsq=(pos.x-x)*(pos.x-x)+(pos.y-y)*(pos.y-y) + local dtsq=(lx-x)*(lx-x)+(ly-y)*(ly-y) + local dt=math.sqrt(dtsq) local tile=x+y*map.width - local ncol=f(color,dtsq,radius) + local ocol=self.lightMap[tile] or {r=0,g=0,b=0} - ncol=blend(ncol,ocol) + local ncol=blend(power,ocol) self.lightMap[tile]=ncol - - return self.ocupancy[tile] + local v=self.ocupancy[tile] + if dtsq>0 then + power.r=power.r*(v.r^dt) + power.g=power.g*(v.g^dt) + power.b=power.b*(v.b^dt) + end + lx=x + ly=y + local pwsq=power.r*power.r+power.g*power.g+power.b*power.b + return pwsq>levelDim*levelDim end return false end @@ -240,14 +251,21 @@ function LightOverlay:buildOcupancy() local pos={x=i+vp.x1-1,y=j+vp.y1-1,z=vp.z} local tile=i+j*map.width local tt=dfhack.maps.getTileType(pos) - + local t1=dfhack.maps.getTileFlags(pos) if tt then local shape=tile_attrs[tt].shape - self.ocupancy[tile]=lightPassable(shape) + if not lightPassable(shape) then + self.ocupancy[tile]={r=0,g=0,b=0} + else + if t1 and not t1.liquid_type and t1.flow_size>2 then + self.ocupancy[tile]={r=0.5,g=0.5,b=0.7} + else + self.ocupancy[tile]={r=0.8,g=0.8,b=0.8} + end + end end end end - end function LightOverlay:makeLightMap() self.lightMap={} From 4ab750e9f3cbe5cfc895c31553447e89484e2cbc Mon Sep 17 00:00:00 2001 From: Warmist Date: Sun, 23 Jun 2013 13:28:22 +0300 Subject: [PATCH 14/72] light.lua: more help, changed screen exit key to '`'. Made it recalculate only when needed. --- scripts/devel/light.lua | 68 +++++++++++++++++++++++++++++++++-------- 1 file changed, 55 insertions(+), 13 deletions(-) diff --git a/scripts/devel/light.lua b/scripts/devel/light.lua index f3d39e4db..48324d797 100644 --- a/scripts/devel/light.lua +++ b/scripts/devel/light.lua @@ -1,4 +1,4 @@ --- an experimental lighting engine for df +-- an experimental lighting engine for df. param: "static" to not recalc when in game. press "~" to recalculate. "`" to exit local gui = require 'gui' local guidm = require 'gui.dwarfmode' local render = require 'plugins.rendermax' @@ -36,9 +36,12 @@ end LightOverlay=defclass(LightOverlay,guidm.DwarfOverlay) LightOverlay.ATTRS { lightMap={}, - dynamic=true + dynamic=true, + dirty=false, } -function LightOverlay.init(args) +function LightOverlay:init(args) + + self.tick=df.global.cur_year_tick_advmode end function lightPassable(shape) @@ -102,8 +105,14 @@ function line(x0, y0, x1, y1,plot) end end end -function LightOverlay:placeLightFov(pos,radius,color,f) - f=f or falloff +function LightOverlay:calculateFovs() + self.fovs=self.fovs or {} + self.precalc=self.precalc or {} + for k,v in ipairs(self.fovs) do + self:calculateFov(v.pos,v.radius,v.color) + end +end +function LightOverlay:calculateFov(pos,radius,color) local vp=self:getViewport() local map = self.df_layout.map local ray=function(tx,ty) @@ -115,9 +124,16 @@ function LightOverlay:placeLightFov(pos,radius,color,f) local dtsq=(lx-x)*(lx-x)+(ly-y)*(ly-y) local dt=math.sqrt(dtsq) local tile=x+y*map.width - + if self.precalc[tile] then + local tcol=blend(self.precalc[tile],power) + if tcol.r==self.precalc[tile].r and tcol.g==self.precalc[tile].g and self.precalc[tile].b==self.precalc[tile].b + and dtsq>0 then + return false + end + end local ocol=self.lightMap[tile] or {r=0,g=0,b=0} local ncol=blend(power,ocol) + self.lightMap[tile]=ncol local v=self.ocupancy[tile] if dtsq>0 then @@ -136,6 +152,17 @@ function LightOverlay:placeLightFov(pos,radius,color,f) end circle(pos.x,pos.y,radius,ray) end +function LightOverlay:placeLightFov(pos,radius,color) + local map = self.df_layout.map + local tile=pos.x+pos.y*map.width + local ocol=self.precalc[tile] or {r=0,g=0,b=0} + local ncol=blend(color,ocol) + self.precalc[tile]=ncol + local ocol=self.lightMap[tile] or {r=0,g=0,b=0} + local ncol=blend(color,ocol) + self.lightMap[tile]=ncol + table.insert(self.fovs,{pos=pos,radius=radius,color=color}) +end function LightOverlay:placeLightFov2(pos,radius,color,f,rays) f=f or falloff local raycount=rays or 25 @@ -208,7 +235,7 @@ function LightOverlay:calculateLightLava() if (t1 and t1.liquid_type and t1.flow_size>0) or (shape==df.tiletype_shape.EMPTY and t2 and t2.liquid_type and t2.flow_size>0) then --self:placeLight({x=i,y=j},5,{r=0.8,g=0.2,b=0.2}) - self:placeLightFov({x=i,y=j},5,{r=0.8,g=0.2,b=0.2},nil,5) + self:placeLightFov({x=i,y=j},5,{r=0.8,g=0.2,b=0.2},nil) end end end @@ -225,7 +252,7 @@ function LightOverlay:calculateLightSun() if (t1 and t1.outside ) then - self:placeLightFov({x=i,y=j},7,{r=1,g=1,b=1},nil,3) + self:placeLightFov({x=i,y=j},15,{r=1,g=1,b=1},nil) end end end @@ -267,22 +294,36 @@ function LightOverlay:buildOcupancy() end end end +function LightOverlay:changed() + if self.dirty or self.tick~=df.global.cur_year_tick_advmode then + self.dirty=false + self.tick=df.global.cur_year_tick_advmode + return true + end + return false +end function LightOverlay:makeLightMap() + if not self:changed() then + return + end + self.fovs={} + self.precalc={} self.lightMap={} + self:buildOcupancy() self:calculateLightCursor() self:calculateLightLava() self:calculateLightSun() + + self:calculateFovs() end function LightOverlay:onIdle() self._native.parent:logic() +end +function LightOverlay:render(dc) if self.dynamic then self:makeLightMap() end -end -function LightOverlay:render(dc) - - self:renderParent() local vp=self:getViewport() local map = self.df_layout.map @@ -313,7 +354,7 @@ function LightOverlay:onDismiss() end function LightOverlay:onInput(keys) - if keys.LEAVESCREEN then + if keys.STRING_A096 then self:dismiss() else self:sendInputToParent(keys) @@ -324,6 +365,7 @@ function LightOverlay:onInput(keys) if keys.STRING_A126 and not self.dynamic then self:makeLightMap() end + self.dirty=true end end if not render.isEnabled() then From 2c49c9e83c9ec81bb832a708facc1815b92f324a Mon Sep 17 00:00:00 2001 From: Warmist Date: Sun, 23 Jun 2013 19:25:42 +0300 Subject: [PATCH 15/72] C++ version of light engine. --- plugins/rendermax/CMakeLists.txt | 2 + plugins/rendermax/renderer_light.cpp | 267 ++++++++++++++++++++++++++ plugins/rendermax/renderer_light.hpp | 109 +++++++++++ plugins/rendermax/renderer_opengl.hpp | 11 +- plugins/rendermax/rendermax.cpp | 46 ++++- 5 files changed, 430 insertions(+), 5 deletions(-) create mode 100644 plugins/rendermax/renderer_light.cpp create mode 100644 plugins/rendermax/renderer_light.hpp diff --git a/plugins/rendermax/CMakeLists.txt b/plugins/rendermax/CMakeLists.txt index a7422a2cd..fb8cc7724 100644 --- a/plugins/rendermax/CMakeLists.txt +++ b/plugins/rendermax/CMakeLists.txt @@ -3,10 +3,12 @@ PROJECT (rendermax) # A list of source files SET(PROJECT_SRCS rendermax.cpp + renderer_light.cpp ) # A list of headers SET(PROJECT_HDRS renderer_opengl.hpp + renderer_light.hpp ) SET_SOURCE_FILES_PROPERTIES( ${PROJECT_HDRS} PROPERTIES HEADER_FILE_ONLY TRUE) diff --git a/plugins/rendermax/renderer_light.cpp b/plugins/rendermax/renderer_light.cpp new file mode 100644 index 000000000..7ff122a37 --- /dev/null +++ b/plugins/rendermax/renderer_light.cpp @@ -0,0 +1,267 @@ +#include "renderer_light.hpp" + +#include + +#include "Types.h" + +#include "modules/Gui.h" +#include "modules/Screen.h" +#include "modules/Maps.h" + +#include "df/graphic.h" +#include "df/viewscreen_dwarfmodest.h" +#include "df/flow_info.h" + +using df::global::gps; +using namespace DFHack; +using df::coord2d; + +const float levelDim=0.2f; + +rect2d getMapViewport() +{ + const int AREA_MAP_WIDTH = 23; + const int MENU_WIDTH = 30; + if(!gps || !df::viewscreen_dwarfmodest::_identity.is_instance(DFHack::Gui::getCurViewscreen())) + return mkrect_wh(0,0,0,0); + int w=gps->dimx; + int h=gps->dimy; + int view_height=h-2; + int area_x2 = w-AREA_MAP_WIDTH-2; + int menu_x2=w-MENU_WIDTH-2; + int menu_x1=area_x2-MENU_WIDTH-1; + int view_rb=w-1; + + int area_pos=*df::global::ui_area_map_width; + int menu_pos=*df::global::ui_menu_width; + if(area_pos<3) + { + view_rb=area_x2; + } + if (menu_posmain.mode!=0) + { + if (menu_pos >= area_pos) + menu_pos = area_pos-1; + int menu_x = menu_x2; + if(menu_pos < 2) menu_x = menu_x1; + view_rb = menu_x; + } + return mkrect_wh(1,1,view_rb,view_height+1); +} +lightingEngineViewscreen::lightingEngineViewscreen(renderer_light* target):lightingEngine(target) +{ + reinit(); +} + +void lightingEngineViewscreen::reinit() +{ + if(!gps) + return; + w=gps->dimx; + h=gps->dimy; + size_t size=w*h; + lightMap.resize(size,lightCell(1,1,1)); + ocupancy.resize(size); +} +void plotCircle(int xm, int ym, int r,std::function setPixel) +{ + int x = -r, y = 0, err = 2-2*r; /* II. Quadrant */ + do { + setPixel(xm-x, ym+y); /* I. Quadrant */ + setPixel(xm-y, ym-x); /* II. Quadrant */ + setPixel(xm+x, ym-y); /* III. Quadrant */ + setPixel(xm+y, ym+x); /* IV. Quadrant */ + r = err; + if (r <= y) err += ++y*2+1; /* e_xy+e_y < 0 */ + if (r > x || err > y) err += ++x*2+1; /* e_xy+e_x > 0 or no 2nd y-step */ + } while (x < 0); +} +void plotLine(int x0, int y0, int x1, int y1,std::function setPixel) +{ + int dx = abs(x1-x0), sx = x0= dy) { err += dy; x0 += sx; rdx=sx;} /* e_xy+e_x > 0 */ + if (e2 <= dx) { err += dx; y0 += sy; rdy=sy;} /* e_xy+e_y < 0 */ + } +} +lightCell blend(lightCell a,lightCell b) +{ + return lightCell(std::max(a.r,b.r),std::max(a.g,b.g),std::max(a.b,b.b)); +} +bool lightingEngineViewscreen::lightUpCell(lightCell& power,int dx,int dy,int tx,int ty) +{ + + if(tx>=mapPort.first.x && ty>=mapPort.first.y && tx<=mapPort.second.x && ty<=mapPort.second.y) + { + size_t tile=getIndex(tx,ty); + float dsq=dx*dx+dy*dy; + lightCell& v=ocupancy[tile]; + bool wallhack=false; + bool outsidehack=false; + if(v.r+v.g+v.b==0) + wallhack=true; + if(v.r<0) + outsidehack=true; + if (dsq>0 && !wallhack && !outsidehack) + { + power.r=power.r*(pow(v.r,dsq)); + power.g=power.g*(pow(v.g,dsq)); + power.b=power.b*(pow(v.b,dsq)); + } + //float dt=sqrt(dsq); + lightCell oldCol=lightMap[tile]; + lightCell ncol=blend(power,oldCol); + lightMap[tile]=ncol; + + if(wallhack) + return false; + if(dsq>0 && outsidehack) + return false; + float pwsq=power.r*power.r+power.g*power.g+power.b*power.b; + return pwsq>levelDim*levelDim; + } + else + return false; +} +void lightingEngineViewscreen::doRay(lightCell power,int cx,int cy,int tx,int ty) +{ + using namespace std::placeholders; + lightCell curPower=power; + plotLine(cx,cy,tx,ty,std::bind(&lightingEngineViewscreen::lightUpCell,this,std::ref(curPower),_1,_2,_3,_4)); +} +void lightingEngineViewscreen::doFovs() +{ + mapPort=getMapViewport(); + using namespace std::placeholders; + for(size_t i=0;i guard(myRenderer->dataMutex); + if(lightMap.size()!=myRenderer->lightGrid.size()) + { + reinit(); + return; + } + std::swap(lightMap,myRenderer->lightGrid); + rect2d vp=getMapViewport(); + + //myRenderer->invalidateRect(vp.first.x,vp.first.y,vp.second.x-vp.first.x,vp.second.y-vp.first.y); + myRenderer->invalidate(); + //std::copy(lightMap.begin(),lightMap.end(),myRenderer->lightGrid.begin()); +} +void lightingEngineViewscreen::doOcupancyAndLights() +{ + lights.clear(); + rect2d vp=getMapViewport(); + + int window_x=*df::global::window_x; + int window_y=*df::global::window_y; + int window_z=*df::global::window_z; + int vpW=vp.second.x-vp.first.x; + int vpH=vp.second.y-vp.first.y; + for(int x=window_x;xbits.building) + { + curCell=lightCell(0,0,0); + } + else if(!d->bits.liquid_type && d->bits.flow_size>3 ) + { + curCell=lightCell(0.5f,0.5f,0.6f); + } + //todo constructions + + //lights + if((d->bits.liquid_type && d->bits.flow_size>0)|| (d2 && d2->bits.liquid_type && d2->bits.flow_size>0)) + { + lightSource lava={lightCell(0.8f,0.2f,0.2f),5,coord2d(wx,wy)}; + lights.push_back(lava); + } + if(d->bits.outside) + { + lightSource sun={lightCell(1,1,1),25,coord2d(wx,wy)}; + lights.push_back(sun); + curCell=lightCell(-1,-1,-1);//Marking as outside so no calculation is done on it + } + + } + + for(int blockx=window_x/16;blockx<(window_x+vpW)/16;blockx++) + for(int blocky=window_y/16;blocky<(window_x+vpW)/16;blocky++) + { + df::map_block* block=Maps::getBlock(blockx,blocky,window_z); + if(!block) + continue; + for(int i=0;iflows.size();i++) + { + df::flow_info* f=block->flows[i]; + if(f && f->density>0 && f->type==df::flow_type::Dragonfire || f->type==df::flow_type::Fire) + { + df::coord2d pos=f->pos; + int wx=pos.x-window_x+vp.first.x; + int wy=pos.y-window_y+vp.first.y; + if(wx>=vp.first.x && wy>=vp.first.y && wx<=vp.second.x && wy<=vp.second.y) + { + lightCell fireColor; + if(f->density>60) + { + fireColor=lightCell(0.98f,0.91f,0.30f); + } + else if(f->density>30) + { + fireColor=lightCell(0.93f,0.16f,0.16f); + } + else + { + fireColor=lightCell(0.64f,0.0f,0.0f); + } + lightSource fire={fireColor,f->density/5,coord2d(wx,wy)}; + lights.push_back(fire); + } + } + } + } +} \ No newline at end of file diff --git a/plugins/rendermax/renderer_light.hpp b/plugins/rendermax/renderer_light.hpp new file mode 100644 index 000000000..d0279fd02 --- /dev/null +++ b/plugins/rendermax/renderer_light.hpp @@ -0,0 +1,109 @@ +#ifndef RENDERER_LIGHT_INCLUDED +#define RENDERER_LIGHT_INCLUDED +#include "renderer_opengl.hpp" +#include "Types.h" + +struct renderer_light : public renderer_wrap { +private: + void colorizeTile(int x,int y) + { + const int tile = x*(df::global::gps->dimy) + y; + old_opengl* p=reinterpret_cast(parent); + float *fg = p->fg + tile * 4 * 6; + float *bg = p->bg + tile * 4 * 6; + float *tex = p->tex + tile * 2 * 6; + lightCell light=lightGrid[tile]; + for (int i = 0; i < 6; i++) { + *(fg++) *= light.r; + *(fg++) *= light.g; + *(fg++) *= light.b; + *(fg++) = 1; + + *(bg++) *= light.r; + *(bg++) *= light.g; + *(bg++) *= light.b; + *(bg++) = 1; + } + } + void reinitLightGrid(int w,int h) + { + tthread::lock_guard guard(dataMutex); + lightGrid.resize(w*h); + } + void reinitLightGrid() + { + reinitLightGrid(df::global::gps->dimy,df::global::gps->dimx); + } +public: + tthread::fast_mutex dataMutex; + std::vector lightGrid; + renderer_light(renderer* parent):renderer_wrap(parent) + { + reinitLightGrid(); + } + virtual void update_tile(int32_t x, int32_t y) { + renderer_wrap::update_tile(x,y); + tthread::lock_guard guard(dataMutex); + colorizeTile(x,y); + }; + virtual void update_all() { + renderer_wrap::update_all(); + tthread::lock_guard guard(dataMutex); + for (int x = 0; x < df::global::gps->dimx; x++) + for (int y = 0; y < df::global::gps->dimy; y++) + colorizeTile(x,y); + }; + virtual void grid_resize(int32_t w, int32_t h) { + renderer_wrap::grid_resize(w,h); + reinitLightGrid(w,h); + }; + virtual void resize(int32_t w, int32_t h) { + renderer_wrap::resize(w,h); + reinitLightGrid(w,h); + } +}; +class lightingEngine +{ +public: + lightingEngine(renderer_light* target):myRenderer(target){} + + virtual void reinit()=0; + virtual void calculate()=0; + + virtual void updateWindow()=0; + +protected: + renderer_light* myRenderer; +}; +struct lightSource +{ + lightCell power; + int radius; + df::coord2d pos; +}; +class lightingEngineViewscreen:public lightingEngine +{ +public: + lightingEngineViewscreen(renderer_light* target); + + void reinit(); + void calculate(); + + void updateWindow(); + +private: + void doOcupancyAndLights(); + void doRay(lightCell power,int cx,int cy,int tx,int ty); + void doFovs(); + bool lightUpCell(lightCell& power,int dx,int dy,int tx,int ty); + size_t inline getIndex(int x,int y) + { + return x*h+y; + } + std::vector lightMap; + std::vector ocupancy; + std::vector lights; + int w,h; + DFHack::rect2d mapPort; +}; +#endif \ No newline at end of file diff --git a/plugins/rendermax/renderer_opengl.hpp b/plugins/rendermax/renderer_opengl.hpp index c6d9d2e63..6b9e5ebed 100644 --- a/plugins/rendermax/renderer_opengl.hpp +++ b/plugins/rendermax/renderer_opengl.hpp @@ -1,4 +1,7 @@ //original file from https://github.com/Baughn/Dwarf-Fortress--libgraphics- +#ifndef RENDERER_OPENGL_INCLUDED +#define RENDERER_OPENGL_INCLUDED + #include "tinythread.h" #include "fast_mutex.h" @@ -120,12 +123,13 @@ public: for(int j=y;jdimy + j; - screen_old[index*4]=screen[index*4]+1; + screen_old[index*4]=0; } }; void invalidate() { - invalidateRect(0,0,df::global::gps->dimx,df::global::gps->dimy); + //invalidateRect(0,0,df::global::gps->dimx,df::global::gps->dimy); + df::global::gps->force_full_display_count++; }; protected: renderer* parent; @@ -346,4 +350,5 @@ public: renderer_wrap::resize(w,h); reinitGrids(w,h); } -}; \ No newline at end of file +}; +#endif \ No newline at end of file diff --git a/plugins/rendermax/rendermax.cpp b/plugins/rendermax/rendermax.cpp index 190e5f421..0a61d1e4a 100644 --- a/plugins/rendermax/rendermax.cpp +++ b/plugins/rendermax/rendermax.cpp @@ -13,15 +13,18 @@ #include "df/enabler.h" #include "renderer_opengl.hpp" +#include "renderer_light.hpp" using namespace DFHack; using std::vector; using std::string; enum RENDERER_MODE { - MODE_DEFAULT,MODE_TRIPPY,MODE_TRUECOLOR,MODE_LUA + MODE_DEFAULT,MODE_TRIPPY,MODE_TRUECOLOR,MODE_LUA,MODE_LIGHT }; RENDERER_MODE current_mode=MODE_DEFAULT; +lightingEngine *engine=NULL; + static command_result rendermax(color_ostream &out, vector & parameters); DFHACK_PLUGIN("rendermax"); @@ -34,6 +37,7 @@ DFhackCExport command_result plugin_init (color_ostream &out, std::vector renderer; current_mode=MODE_DEFAULT; + if(current_mode==MODE_LIGHT) + { + if(engine) + delete engine; + engine=0; + } } void installNew(df::renderer* r,RENDERER_MODE newMode) { @@ -249,7 +259,7 @@ static command_result rendermax(color_ostream &out, vector & parameters { lightCell red(1,0,0),green(0,1,0),blue(0,0,1),white(1,1,1); lightCell cur=white; - lightCell dim(0.2,0.2,0.2); + lightCell dim(0.2f,0.2f,0.2f); string col=parameters[1]; if(col=="red") cur=red; @@ -293,6 +303,24 @@ static command_result rendermax(color_ostream &out, vector & parameters unlockGrids(); return CR_OK; } + else if(cmd=="light") + { + if(current_mode==MODE_LIGHT) + { + engine->calculate(); + engine->updateWindow(); + } + else + { + removeOld(); + renderer_light *myRender=new renderer_light(df::global::enabler->renderer); + installNew(myRender,MODE_LIGHT); + engine=new lightingEngineViewscreen(myRender); + engine->calculate(); + engine->updateWindow(); + } + return CR_OK; + } else if(cmd=="disable") { if(current_mode==MODE_DEFAULT) @@ -303,4 +331,18 @@ static command_result rendermax(color_ostream &out, vector & parameters return CR_OK; } return CR_WRONG_USAGE; +} +DFhackCExport command_result plugin_onupdate (color_ostream &out) +{ + if(engine) + { + engine->calculate(); + engine->updateWindow(); + } + return CR_OK; +} +DFhackCExport command_result plugin_shutdown(color_ostream &) +{ + removeOld(); + return CR_OK; } \ No newline at end of file From cb6130066d6e3e76e05ff71cca14907ff370bbbe Mon Sep 17 00:00:00 2001 From: Warmist Date: Sun, 23 Jun 2013 20:45:05 +0300 Subject: [PATCH 16/72] Performance improvements, added flickering cursor light. --- plugins/rendermax/renderer_light.cpp | 91 ++++++++++++++++++++------- plugins/rendermax/renderer_light.hpp | 17 ++++- plugins/rendermax/renderer_opengl.hpp | 4 ++ 3 files changed, 88 insertions(+), 24 deletions(-) diff --git a/plugins/rendermax/renderer_light.cpp b/plugins/rendermax/renderer_light.cpp index 7ff122a37..7ad617e44 100644 --- a/plugins/rendermax/renderer_light.cpp +++ b/plugins/rendermax/renderer_light.cpp @@ -62,6 +62,7 @@ void lightingEngineViewscreen::reinit() size_t size=w*h; lightMap.resize(size,lightCell(1,1,1)); ocupancy.resize(size); + lights.resize(size); } void plotCircle(int xm, int ym, int r,std::function setPixel) { @@ -105,18 +106,22 @@ bool lightingEngineViewscreen::lightUpCell(lightCell& power,int dx,int dy,int tx size_t tile=getIndex(tx,ty); float dsq=dx*dx+dy*dy; lightCell& v=ocupancy[tile]; + lightSource& ls=lights[tile]; bool wallhack=false; - bool outsidehack=false; if(v.r+v.g+v.b==0) wallhack=true; - if(v.r<0) - outsidehack=true; - if (dsq>0 && !wallhack && !outsidehack) + + if (dsq>0 && !wallhack) { power.r=power.r*(pow(v.r,dsq)); power.g=power.g*(pow(v.g,dsq)); power.b=power.b*(pow(v.b,dsq)); } + if(ls.radius>0 && dsq>0) + { + if(power0 && outsidehack) - return false; float pwsq=power.r*power.r+power.g*power.g+power.b*power.b; return pwsq>levelDim*levelDim; } @@ -142,17 +145,32 @@ void lightingEngineViewscreen::doFovs() { mapPort=getMapViewport(); using namespace std::placeholders; - for(size_t i=0;i0) + { + lightCell power=csource.power; + int radius =csource.radius; + if(csource.flicker) + { + float flicker=(rand()/(float)RAND_MAX)/2.0f+0.5f; + radius*=flicker; + power=power*flicker; + } + plotCircle(i,j,radius, + std::bind(&lightingEngineViewscreen::doRay,this,power,i,j,_1,_2)); + } + } } void lightingEngineViewscreen::calculate() { rect2d vp=getMapViewport(); const lightCell dim(levelDim,levelDim,levelDim); lightMap.assign(lightMap.size(),lightCell(1,1,1)); + lights.assign(lights.size(),lightSource()); for(int i=vp.first.x;iinvalidate(); //std::copy(lightMap.begin(),lightMap.end(),myRenderer->lightGrid.begin()); } +void lightSource::combine(const lightSource& other) +{ + power=blend(power,other.power); + radius=std::max(other.radius,radius);//hack... but who cares +} +bool lightingEngineViewscreen::addLight(int tileId,const lightSource& light) +{ + bool wasLight=lights[tileId].radius>0; + lights[tileId].combine(light); + if(light.flicker) + lights[tileId].flicker=true; + return wasLight; +} void lightingEngineViewscreen::doOcupancyAndLights() { - lights.clear(); + rect2d vp=getMapViewport(); int window_x=*df::global::window_x; @@ -192,8 +223,9 @@ void lightingEngineViewscreen::doOcupancyAndLights() { int wx=x-window_x+vp.first.x; int wy=y-window_y+vp.first.y; - lightCell& curCell=ocupancy[getIndex(wx,wy)]; - curCell=lightCell(0.8f,0.8f,0.8f); + int tile=getIndex(wx,wy); + lightCell& curCell=ocupancy[tile]; + curCell=lightCell(0.85f,0.85f,0.85f); df::tiletype* type = Maps::getTileType(x,y,window_z); if(!type) continue; @@ -204,7 +236,7 @@ void lightingEngineViewscreen::doOcupancyAndLights() if(!o || !d ) continue; - if(shape==df::tiletype_shape::BROOK_BED || shape==df::tiletype_shape::WALL || shape==df::tiletype_shape::TREE || o->bits.building) + if(shape==df::tiletype_shape::BROOK_BED || shape==df::tiletype_shape::WALL || shape==df::tiletype_shape::TREE ) { curCell=lightCell(0,0,0); } @@ -215,16 +247,19 @@ void lightingEngineViewscreen::doOcupancyAndLights() //todo constructions //lights - if((d->bits.liquid_type && d->bits.flow_size>0)|| (d2 && d2->bits.liquid_type && d2->bits.flow_size>0)) + if((d->bits.liquid_type && d->bits.flow_size>0)|| + ( + (shape==df::tiletype_shape::EMPTY || shape==df::tiletype_shape::RAMP_TOP || shape==df::tiletype_shape::STAIR_DOWN || shape==df::tiletype_shape::STAIR_UPDOWN ) + && d2 && d2->bits.liquid_type && d2->bits.flow_size>0) + ) { - lightSource lava={lightCell(0.8f,0.2f,0.2f),5,coord2d(wx,wy)}; - lights.push_back(lava); + lightSource lava(lightCell(0.8f,0.2f,0.2f),5); + addLight(tile,lava); } if(d->bits.outside) { - lightSource sun={lightCell(1,1,1),25,coord2d(wx,wy)}; - lights.push_back(sun); - curCell=lightCell(-1,-1,-1);//Marking as outside so no calculation is done on it + lightSource sun(lightCell(1,1,1),15); + addLight(tile,sun); } } @@ -243,6 +278,7 @@ void lightingEngineViewscreen::doOcupancyAndLights() df::coord2d pos=f->pos; int wx=pos.x-window_x+vp.first.x; int wy=pos.y-window_y+vp.first.y; + int tile=getIndex(wx,wy); if(wx>=vp.first.x && wy>=vp.first.y && wx<=vp.second.x && wy<=vp.second.y) { lightCell fireColor; @@ -258,10 +294,19 @@ void lightingEngineViewscreen::doOcupancyAndLights() { fireColor=lightCell(0.64f,0.0f,0.0f); } - lightSource fire={fireColor,f->density/5,coord2d(wx,wy)}; - lights.push_back(fire); + lightSource fire(fireColor,f->density/5); + addLight(tile,fire); } } } } + if(df::global::cursor->x>-30000) + { + lightSource cursor(lightCell(0.96f,0.84f,0.03f),11); + cursor.flicker=true; + int wx=df::global::cursor->x-window_x+vp.first.x; + int wy=df::global::cursor->y-window_y+vp.first.y; + int tile=getIndex(wx,wy); + addLight(tile,cursor); + } } \ No newline at end of file diff --git a/plugins/rendermax/renderer_light.hpp b/plugins/rendermax/renderer_light.hpp index d0279fd02..541e4280f 100644 --- a/plugins/rendermax/renderer_light.hpp +++ b/plugins/rendermax/renderer_light.hpp @@ -79,7 +79,21 @@ struct lightSource { lightCell power; int radius; - df::coord2d pos; + bool flicker; + lightSource():power(0,0,0),radius(0),flicker(false) + { + + } + lightSource(lightCell power,int radius):power(power),radius(radius),flicker(false) + { + + } + float powerSquared()const + { + return power.r*power.r+power.g*power.g+power.b*power.b; + } + void combine(const lightSource& other); + }; class lightingEngineViewscreen:public lightingEngine { @@ -96,6 +110,7 @@ private: void doRay(lightCell power,int cx,int cy,int tx,int ty); void doFovs(); bool lightUpCell(lightCell& power,int dx,int dy,int tx,int ty); + bool addLight(int tileId,const lightSource& light); size_t inline getIndex(int x,int y) { return x*h+y; diff --git a/plugins/rendermax/renderer_opengl.hpp b/plugins/rendermax/renderer_opengl.hpp index 6b9e5ebed..b7529284f 100644 --- a/plugins/rendermax/renderer_opengl.hpp +++ b/plugins/rendermax/renderer_opengl.hpp @@ -203,6 +203,10 @@ struct lightCell { return lightCell(r+other.r,g+other.g,b+other.b); } + bool operator<(const lightCell& other) + { + return r Date: Sun, 23 Jun 2013 23:51:25 +0530 Subject: [PATCH 17/72] Made windows transmit colored light. --- plugins/rendermax/renderer_light.cpp | 43 +++++++++++++++++++++++++++- 1 file changed, 42 insertions(+), 1 deletion(-) diff --git a/plugins/rendermax/renderer_light.cpp b/plugins/rendermax/renderer_light.cpp index 7ff122a37..27b5e188e 100644 --- a/plugins/rendermax/renderer_light.cpp +++ b/plugins/rendermax/renderer_light.cpp @@ -11,6 +11,9 @@ #include "df/graphic.h" #include "df/viewscreen_dwarfmodest.h" #include "df/flow_info.h" +#include "df/world.h" +#include "df/building.h" + using df::global::gps; using namespace DFHack; @@ -177,6 +180,9 @@ void lightingEngineViewscreen::updateWindow() myRenderer->invalidate(); //std::copy(lightMap.begin(),lightMap.end(),myRenderer->lightGrid.begin()); } + +static size_t max_list_size = 100000; // Avoid iterating over huge lists + void lightingEngineViewscreen::doOcupancyAndLights() { lights.clear(); @@ -204,10 +210,45 @@ void lightingEngineViewscreen::doOcupancyAndLights() if(!o || !d ) continue; - if(shape==df::tiletype_shape::BROOK_BED || shape==df::tiletype_shape::WALL || shape==df::tiletype_shape::TREE || o->bits.building) + if(shape==df::tiletype_shape::BROOK_BED || shape==df::tiletype_shape::WALL || shape==df::tiletype_shape::TREE /*|| o->bits.building*/) { curCell=lightCell(0,0,0); } + else if(o->bits.building) + { + // Fixme: don't iterate the list every frame + size_t count = df::global::world->buildings.all.size(); + if (count <= max_list_size) + { + for(size_t i = 0; i < count; i++) + { + df::building *bld = df::global::world->buildings.all[i]; + + if (window_z == bld->z && + x >= bld->x1 && x <= bld->x2 && + y >= bld->y1 && y <= bld->y2) + { + df::building_type type = bld->getType(); + + if (type == df::enums::building_type::WindowGlass) + { + if(bld->mat_type == 3)//green glass + { + curCell=lightCell(0.1f,0.9f,0.5f); + } + else if(bld->mat_type == 4)//clear glass + { + curCell=lightCell(0.5f,0.95f,0.9f); + } + else if(bld->mat_type == 5)//crystal glass + { + curCell=lightCell(0.75f,0.95f,0.95f); + } + } + } + } + } + } else if(!d->bits.liquid_type && d->bits.flow_size>3 ) { curCell=lightCell(0.5f,0.5f,0.6f); From 4f7df238eae45100370861263a8e4885d6683d8f Mon Sep 17 00:00:00 2001 From: Warmist Date: Sun, 23 Jun 2013 21:29:03 +0300 Subject: [PATCH 18/72] Fixed non-circular light. Do not show hidden tiles. --- plugins/rendermax/renderer_light.cpp | 23 +++++++++++++++-------- plugins/rendermax/renderer_light.hpp | 2 +- 2 files changed, 16 insertions(+), 9 deletions(-) diff --git a/plugins/rendermax/renderer_light.cpp b/plugins/rendermax/renderer_light.cpp index 7ad617e44..fb5f35d53 100644 --- a/plugins/rendermax/renderer_light.cpp +++ b/plugins/rendermax/renderer_light.cpp @@ -105,6 +105,7 @@ bool lightingEngineViewscreen::lightUpCell(lightCell& power,int dx,int dy,int tx { size_t tile=getIndex(tx,ty); float dsq=dx*dx+dy*dy; + float dt=sqrt(dsq); lightCell& v=ocupancy[tile]; lightSource& ls=lights[tile]; bool wallhack=false; @@ -113,9 +114,9 @@ bool lightingEngineViewscreen::lightUpCell(lightCell& power,int dx,int dy,int tx if (dsq>0 && !wallhack) { - power.r=power.r*(pow(v.r,dsq)); - power.g=power.g*(pow(v.g,dsq)); - power.b=power.b*(pow(v.b,dsq)); + power.r=power.r*(pow(v.r,dt)); + power.g=power.g*(pow(v.g,dt)); + power.b=power.b*(pow(v.b,dt)); } if(ls.radius>0 && dsq>0) { @@ -186,6 +187,7 @@ void lightingEngineViewscreen::updateWindow() if(lightMap.size()!=myRenderer->lightGrid.size()) { reinit(); + myRenderer->invalidate(); return; } std::swap(lightMap,myRenderer->lightGrid); @@ -210,7 +212,9 @@ bool lightingEngineViewscreen::addLight(int tileId,const lightSource& light) } void lightingEngineViewscreen::doOcupancyAndLights() { - + lightSource sun(lightCell(1,1,1),15); + lightSource lava(lightCell(0.8f,0.2f,0.2f),5); + rect2d vp=getMapViewport(); int window_x=*df::global::window_x; @@ -228,15 +232,18 @@ void lightingEngineViewscreen::doOcupancyAndLights() curCell=lightCell(0.85f,0.85f,0.85f); df::tiletype* type = Maps::getTileType(x,y,window_z); if(!type) + { + //unallocated, do sky + addLight(tile,sun); continue; + } df::tiletype_shape shape = ENUM_ATTR(tiletype,shape,*type); df::tile_designation* d=Maps::getTileDesignation(x,y,window_z); df::tile_designation* d2=Maps::getTileDesignation(x,y,window_z-1); df::tile_occupancy* o=Maps::getTileOccupancy(x,y,window_z); if(!o || !d ) continue; - - if(shape==df::tiletype_shape::BROOK_BED || shape==df::tiletype_shape::WALL || shape==df::tiletype_shape::TREE ) + if(shape==df::tiletype_shape::BROOK_BED || shape==df::tiletype_shape::WALL || shape==df::tiletype_shape::TREE || d->bits.hidden ) { curCell=lightCell(0,0,0); } @@ -253,12 +260,12 @@ void lightingEngineViewscreen::doOcupancyAndLights() && d2 && d2->bits.liquid_type && d2->bits.flow_size>0) ) { - lightSource lava(lightCell(0.8f,0.2f,0.2f),5); + addLight(tile,lava); } if(d->bits.outside) { - lightSource sun(lightCell(1,1,1),15); + addLight(tile,sun); } diff --git a/plugins/rendermax/renderer_light.hpp b/plugins/rendermax/renderer_light.hpp index 541e4280f..9520380e1 100644 --- a/plugins/rendermax/renderer_light.hpp +++ b/plugins/rendermax/renderer_light.hpp @@ -59,7 +59,7 @@ public: }; virtual void resize(int32_t w, int32_t h) { renderer_wrap::resize(w,h); - reinitLightGrid(w,h); + reinitLightGrid(); } }; class lightingEngine From fd0c053a80de8c332aee55e427f03b6b20767edd Mon Sep 17 00:00:00 2001 From: Japa Date: Mon, 24 Jun 2013 00:14:06 +0530 Subject: [PATCH 19/72] Added some more operators to the cell color class. --- plugins/rendermax/renderer_light.cpp | 6 +++--- plugins/rendermax/renderer_opengl.hpp | 11 +++++++++++ 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/plugins/rendermax/renderer_light.cpp b/plugins/rendermax/renderer_light.cpp index 27b5e188e..7cd1d5164 100644 --- a/plugins/rendermax/renderer_light.cpp +++ b/plugins/rendermax/renderer_light.cpp @@ -234,15 +234,15 @@ void lightingEngineViewscreen::doOcupancyAndLights() { if(bld->mat_type == 3)//green glass { - curCell=lightCell(0.1f,0.9f,0.5f); + curCell*=lightCell(0.1f,0.9f,0.5f); } else if(bld->mat_type == 4)//clear glass { - curCell=lightCell(0.5f,0.95f,0.9f); + curCell*=lightCell(0.5f,0.95f,0.9f); } else if(bld->mat_type == 5)//crystal glass { - curCell=lightCell(0.75f,0.95f,0.95f); + curCell*=lightCell(0.75f,0.95f,0.95f); } } } diff --git a/plugins/rendermax/renderer_opengl.hpp b/plugins/rendermax/renderer_opengl.hpp index 6b9e5ebed..7c3819c57 100644 --- a/plugins/rendermax/renderer_opengl.hpp +++ b/plugins/rendermax/renderer_opengl.hpp @@ -199,6 +199,17 @@ struct lightCell { return lightCell(r*val,g*val,b*val); } + lightCell operator*(lightCell cell) + { + return lightCell(r*cell.r,g*cell.g,b*cell.b); + } + lightCell operator*=(lightCell cell) + { + r*=cell.r; + g*=cell.g; + b*=cell.b; + return lightCell(r,g,b); + } lightCell operator+(const lightCell& other) { return lightCell(r+other.r,g+other.g,b+other.b); From 0473f89fa25bee12013b2e68239b694735db311b Mon Sep 17 00:00:00 2001 From: Warmist Date: Sun, 23 Jun 2013 21:49:17 +0300 Subject: [PATCH 20/72] Update water a bit. --- plugins/rendermax/renderer_light.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/rendermax/renderer_light.cpp b/plugins/rendermax/renderer_light.cpp index dd138e04d..f7fad23ff 100644 --- a/plugins/rendermax/renderer_light.cpp +++ b/plugins/rendermax/renderer_light.cpp @@ -288,7 +288,7 @@ void lightingEngineViewscreen::doOcupancyAndLights() } else if(!d->bits.liquid_type && d->bits.flow_size>3 ) { - curCell=lightCell(0.5f,0.5f,0.6f); + curCell*=lightCell(0.7f,0.7f,0.8f); } //todo constructions From 82deeafe89dd30547f00029a340933e21dea520e Mon Sep 17 00:00:00 2001 From: Warmist Date: Sun, 23 Jun 2013 22:28:26 +0300 Subject: [PATCH 21/72] Torches for statues, candles on the tables. --- plugins/rendermax/renderer_light.cpp | 25 +++++++++++++++++++++++-- 1 file changed, 23 insertions(+), 2 deletions(-) diff --git a/plugins/rendermax/renderer_light.cpp b/plugins/rendermax/renderer_light.cpp index f7fad23ff..463290121 100644 --- a/plugins/rendermax/renderer_light.cpp +++ b/plugins/rendermax/renderer_light.cpp @@ -218,7 +218,9 @@ void lightingEngineViewscreen::doOcupancyAndLights() { lightSource sun(lightCell(1,1,1),15); lightSource lava(lightCell(0.8f,0.2f,0.2f),5); - + lightSource candle(lightCell(0.96f,0.84f,0.03f),5); + candle.flicker=true; + lightSource torch(lightCell(0.96f,0.5f,0.1f),8); rect2d vp=getMapViewport(); int window_x=*df::global::window_x; @@ -282,6 +284,25 @@ void lightingEngineViewscreen::doOcupancyAndLights() curCell*=lightCell(0.75f,0.95f,0.95f); } } + if (type == df::enums::building_type::Table) + { + addLight(tile,candle); + } + if (type==df::enums::building_type::Statue) + { + addLight(tile,torch); + } + if (type==df::enums::building_type::WindowGem) + { + DFHack::MaterialInfo mat(bld->mat_index,bld->mat_type); + if(mat.isInorganic()) + { + int color=mat.inorganic->material.basic_color[0]; + curCell*=lightCell(df::global::enabler->ccolor[color][0]/255.0f, + df::global::enabler->ccolor[color][1]/255.0f, + df::global::enabler->ccolor[color][2]/255.0f); + } + } } } } @@ -290,7 +311,6 @@ void lightingEngineViewscreen::doOcupancyAndLights() { curCell*=lightCell(0.7f,0.7f,0.8f); } - //todo constructions //lights if((d->bits.liquid_type && d->bits.flow_size>0)|| @@ -314,6 +334,7 @@ void lightingEngineViewscreen::doOcupancyAndLights() for(int blocky=window_y/16;blocky<(window_x+vpW)/16;blocky++) { df::map_block* block=Maps::getBlock(blockx,blocky,window_z); + if(!block) continue; for(int i=0;iflows.size();i++) From 06915aeded40afa8733e32d0faae42b75f894373 Mon Sep 17 00:00:00 2001 From: Warmist Date: Sun, 23 Jun 2013 23:56:01 +0300 Subject: [PATCH 22/72] Fixed unload/disable crash. Added glowing plants. --- plugins/rendermax/renderer_light.cpp | 70 +++++++++++++++++++++++++--- plugins/rendermax/renderer_light.hpp | 8 +++- plugins/rendermax/rendermax.cpp | 49 ++++++++++--------- 3 files changed, 96 insertions(+), 31 deletions(-) diff --git a/plugins/rendermax/renderer_light.cpp b/plugins/rendermax/renderer_light.cpp index 463290121..681afdc19 100644 --- a/plugins/rendermax/renderer_light.cpp +++ b/plugins/rendermax/renderer_light.cpp @@ -1,6 +1,7 @@ #include "renderer_light.hpp" #include +#include #include "Types.h" @@ -13,7 +14,9 @@ #include "df/flow_info.h" #include "df/world.h" #include "df/building.h" - +#include "df/building_doorst.h" +#include "df/plant.h" +#include "df/plant_raw.h" using df::global::gps; using namespace DFHack; @@ -54,6 +57,7 @@ rect2d getMapViewport() lightingEngineViewscreen::lightingEngineViewscreen(renderer_light* target):lightingEngine(target) { reinit(); + initRawSpecific(); } void lightingEngineViewscreen::reinit() @@ -213,16 +217,47 @@ bool lightingEngineViewscreen::addLight(int tileId,const lightSource& light) lights[tileId].flicker=true; return wasLight; } +lightCell getStandartColor(int colorId) +{ + return lightCell(df::global::enabler->ccolor[colorId][0]/255.0f, + df::global::enabler->ccolor[colorId][1]/255.0f, + df::global::enabler->ccolor[colorId][2]/255.0f); +} +int getPlantNumber(const std::string& id) +{ + std::vector& vec=df::plant_raw::get_vector(); + for(int i=0;iid==id) + return i; + } + return -1; +} +void addPlant(const std::string& id,std::map& map,const lightSource& v) +{ + int nId=getPlantNumber(id); + if(nId>0) + { + map[nId]=v; + } +} +void lightingEngineViewscreen::initRawSpecific() +{ + addPlant("TOWER_CAP",glowPlants,lightSource(lightCell(0.65,0.65,0.65),6)); + addPlant("MUSHROOM_CUP_DIMPLE",glowPlants,lightSource(lightCell(0.03,0.03,0.9),3)); + addPlant("CAVE MOSS",glowPlants,lightSource(lightCell(0.3,0.3,0.9),2)); + addPlant("MUSHROOM_HELMET_PLUMP",glowPlants,lightSource(lightCell(0.5,0.2,0.9),2)); +} static size_t max_list_size = 100000; // Avoid iterating over huge lists void lightingEngineViewscreen::doOcupancyAndLights() { lightSource sun(lightCell(1,1,1),15); lightSource lava(lightCell(0.8f,0.2f,0.2f),5); lightSource candle(lightCell(0.96f,0.84f,0.03f),5); - candle.flicker=true; - lightSource torch(lightCell(0.96f,0.5f,0.1f),8); + lightSource torch(lightCell(0.9f,0.75f,0.3f),8); rect2d vp=getMapViewport(); + int window_x=*df::global::window_x; int window_y=*df::global::window_y; int window_z=*df::global::window_z; @@ -297,12 +332,16 @@ void lightingEngineViewscreen::doOcupancyAndLights() DFHack::MaterialInfo mat(bld->mat_index,bld->mat_type); if(mat.isInorganic()) { - int color=mat.inorganic->material.basic_color[0]; - curCell*=lightCell(df::global::enabler->ccolor[color][0]/255.0f, - df::global::enabler->ccolor[color][1]/255.0f, - df::global::enabler->ccolor[color][2]/255.0f); + int color=mat.inorganic->material.build_color[0]+8*mat.inorganic->material.build_color[2]; + curCell*=getStandartColor(color); } } + if(type==df::enums::building_type::Door) + { + df::building_doorst* door=static_cast(bld); + if(door->door_flags.bits.closed) + curCell*=lightCell(0,0,0); + } } } } @@ -366,6 +405,23 @@ void lightingEngineViewscreen::doOcupancyAndLights() } } } + for(int i=0;iplants.size();i++) + { + df::plant* cPlant=block->plants[i]; + + df::coord2d pos=cPlant->pos; + int wx=pos.x-window_x+vp.first.x; + int wy=pos.y-window_y+vp.first.y; + int tile=getIndex(wx,wy); + if(wx>=vp.first.x && wy>=vp.first.y && wx<=vp.second.x && wy<=vp.second.y) + { + auto it=glowPlants.find(cPlant->material); + if(it!=glowPlants.end()) + { + addLight(tile,it->second); + } + } + } } if(df::global::cursor->x>-30000) { diff --git a/plugins/rendermax/renderer_light.hpp b/plugins/rendermax/renderer_light.hpp index 9520380e1..3744fd5bc 100644 --- a/plugins/rendermax/renderer_light.hpp +++ b/plugins/rendermax/renderer_light.hpp @@ -2,7 +2,7 @@ #define RENDERER_LIGHT_INCLUDED #include "renderer_opengl.hpp" #include "Types.h" - +#include struct renderer_light : public renderer_wrap { private: void colorizeTile(int x,int y) @@ -111,6 +111,7 @@ private: void doFovs(); bool lightUpCell(lightCell& power,int dx,int dy,int tx,int ty); bool addLight(int tileId,const lightSource& light); + void initRawSpecific(); size_t inline getIndex(int x,int y) { return x*h+y; @@ -118,6 +119,11 @@ private: std::vector lightMap; std::vector ocupancy; std::vector lights; + + + std::map glowPlants; + std::map glowVeins; + int w,h; DFHack::rect2d mapPort; }; diff --git a/plugins/rendermax/rendermax.cpp b/plugins/rendermax/rendermax.cpp index 0a61d1e4a..acfa9f92c 100644 --- a/plugins/rendermax/rendermax.cpp +++ b/plugins/rendermax/rendermax.cpp @@ -20,7 +20,7 @@ using std::vector; using std::string; enum RENDERER_MODE { - MODE_DEFAULT,MODE_TRIPPY,MODE_TRUECOLOR,MODE_LUA,MODE_LIGHT + MODE_DEFAULT,MODE_TRIPPY,MODE_TRUECOLOR,MODE_LUA,MODE_LIGHT,MODE_LIGHT_OFF }; RENDERER_MODE current_mode=MODE_DEFAULT; lightingEngine *engine=NULL; @@ -47,12 +47,6 @@ void removeOld() if(current_mode!=MODE_DEFAULT) delete df::global::enabler->renderer; current_mode=MODE_DEFAULT; - if(current_mode==MODE_LIGHT) - { - if(engine) - delete engine; - engine=0; - } } void installNew(df::renderer* r,RENDERER_MODE newMode) { @@ -241,6 +235,11 @@ static command_result rendermax(color_ostream &out, vector & parameters { if(parameters.size()==0) return CR_WRONG_USAGE; + if(!df::global::enabler->renderer->uses_opengl()) + { + out.printerr("Sorry, this plugin needs open gl enabled printmode. Try STANDARD or other non-2d"); + return CR_FAILURE; + } string cmd=parameters[0]; if(cmd=="trippy") { @@ -305,26 +304,20 @@ static command_result rendermax(color_ostream &out, vector & parameters } else if(cmd=="light") { - if(current_mode==MODE_LIGHT) - { - engine->calculate(); - engine->updateWindow(); - } - else - { - removeOld(); - renderer_light *myRender=new renderer_light(df::global::enabler->renderer); - installNew(myRender,MODE_LIGHT); - engine=new lightingEngineViewscreen(myRender); - engine->calculate(); - engine->updateWindow(); - } + removeOld(); + renderer_light *myRender=new renderer_light(df::global::enabler->renderer); + installNew(myRender,MODE_LIGHT); + engine=new lightingEngineViewscreen(myRender); + engine->calculate(); + engine->updateWindow(); return CR_OK; } else if(cmd=="disable") { if(current_mode==MODE_DEFAULT) out.print("%s\n","Not installed, doing nothing."); + else if(current_mode==MODE_LIGHT) + current_mode=MODE_LIGHT_OFF; else removeOld(); @@ -336,9 +329,19 @@ DFhackCExport command_result plugin_onupdate (color_ostream &out) { if(engine) { - engine->calculate(); - engine->updateWindow(); + if(current_mode==MODE_LIGHT_OFF) + { + delete engine; + engine=0; + removeOld(); + } + else + { + engine->calculate(); + engine->updateWindow(); + } } + return CR_OK; } DFhackCExport command_result plugin_shutdown(color_ostream &) From c675ca467ad05b522896494bd9ff5827ae17fedc Mon Sep 17 00:00:00 2001 From: Japa Date: Mon, 24 Jun 2013 02:35:03 +0530 Subject: [PATCH 23/72] Made sky light be more realistic, decreasing through water, and ignoring tile designations otherwise. --- plugins/rendermax/renderer_light.cpp | 80 +++++++++++++++++++++++++-- plugins/rendermax/renderer_opengl.hpp | 8 +++ 2 files changed, 83 insertions(+), 5 deletions(-) diff --git a/plugins/rendermax/renderer_light.cpp b/plugins/rendermax/renderer_light.cpp index 7cd1d5164..7319c6fe5 100644 --- a/plugins/rendermax/renderer_light.cpp +++ b/plugins/rendermax/renderer_light.cpp @@ -193,6 +193,78 @@ void lightingEngineViewscreen::doOcupancyAndLights() int window_z=*df::global::window_z; int vpW=vp.second.x-vp.first.x; int vpH=vp.second.y-vp.first.y; + int endBlockx = (window_x+vpW); + int endBlocky = (window_y+vpH); + if(endBlockx >= df::global::world->map.x_count_block) endBlockx = df::global::world->map.x_count_block-1; + if(endBlocky >= df::global::world->map.y_count_block) endBlocky = df::global::world->map.y_count_block-1; + for(int blockx=window_x/16;blockx<=endBlockx;blockx++) + for(int blocky=window_y/16;blocky<=endBlocky;blocky++) + { + + lightCell cellArray[16][16]; + for(int block_x = 0; block_x < 16; block_x++) + for(int block_y = 0; block_y < 16; block_y++) + { + cellArray[block_x][block_y] = lightCell(1,1,1); + } + int totalBlank = 0; + int topLevel = df::global::world->map.z_count-1; + for(int ZZ = topLevel; (ZZ >= window_z) && totalBlank < 257; ZZ--) + { + df::map_block* block=Maps::getBlock(blockx,blocky,ZZ); + totalBlank = 0; + for(int block_x = 0; block_x < 16; block_x++) + for(int block_y = 0; block_y < 16; block_y++) + { + if(block) + { + df::tiletype type = block->tiletype[block_x][block_y]; + df::tile_designation d = block->designation[block_x][block_y]; + df::tile_occupancy o = block->occupancy[block_x][block_y]; + df::tiletype_shape shape = ENUM_ATTR(tiletype,shape,type); + df::tiletype_shape_basic basic_shape = ENUM_ATTR(tiletype_shape, basic_shape, shape); + + if(basic_shape==df::tiletype_shape_basic::Wall) + { + cellArray[block_x][block_y]=lightCell(0,0,0); + } + else if(basic_shape==df::tiletype_shape_basic::Floor || basic_shape==df::tiletype_shape_basic::Ramp || basic_shape==df::tiletype_shape_basic::Stair) + { + if(ZZ!=window_z) + { + cellArray[block_x][block_y]=lightCell(0,0,0); + } + } + if(d.bits.liquid_type == df::enums::tile_liquid::Water && d.bits.flow_size) + { + cellArray[block_x][block_y] *= (lightCell(1,1,1) - (lightCell(1,1,1) - lightCell(0.63f,0.63f,0.75f))*(d.bits.flow_size/7)); + } + else if(d.bits.liquid_type == df::enums::tile_liquid::Magma && d.bits.flow_size > 3) + { + cellArray[block_x][block_y]=lightCell(0,0,0); + } + } + if(cellArray[block_x][block_y].r < 0.003f && cellArray[block_x][block_y].g < 0.003f && cellArray[block_x][block_y].b < 0.003f) + totalBlank++; + } + } + for(int block_x = 0; block_x < 16; block_x++) + for(int block_y = 0; block_y < 16; block_y++) + { + df::coord2d pos; + pos.x = blockx*16+block_x; + pos.y = blocky*16+block_y; + int wx=pos.x-window_x+vp.first.x; + int wy=pos.y-window_y+vp.first.y; + + if(cellArray[block_x][block_y].r >= 0.003f && cellArray[block_x][block_y].g >= 0.003f && cellArray[block_x][block_y].b >= 0.003f) + { + lightSource sun={cellArray[block_x][block_y],25,coord2d(wx,wy)}; + lights.push_back(sun); + } + } + + } for(int x=window_x;xbits.outside) + if(d->bits.outside && d->bits.flow_size==0) { - lightSource sun={lightCell(1,1,1),25,coord2d(wx,wy)}; - lights.push_back(sun); curCell=lightCell(-1,-1,-1);//Marking as outside so no calculation is done on it } } - for(int blockx=window_x/16;blockx<(window_x+vpW)/16;blockx++) - for(int blocky=window_y/16;blocky<(window_x+vpW)/16;blocky++) + for(int blockx=window_x/16;blockx<=endBlockx;blockx++) + for(int blocky=window_y/16;blocky<=endBlocky;blocky++) { df::map_block* block=Maps::getBlock(blockx,blocky,window_z); if(!block) diff --git a/plugins/rendermax/renderer_opengl.hpp b/plugins/rendermax/renderer_opengl.hpp index 7c3819c57..aa14a8c70 100644 --- a/plugins/rendermax/renderer_opengl.hpp +++ b/plugins/rendermax/renderer_opengl.hpp @@ -194,11 +194,19 @@ struct lightCell lightCell(float r,float g,float b):r(r),g(g),b(b) { + } + lightCell operator-(lightCell cell) + { + return lightCell(r-cell.r,g-cell.g,b-cell.b); } lightCell operator*(float val) { return lightCell(r*val,g*val,b*val); } + lightCell operator/(float val) + { + return lightCell(r/val,g/val,b/val); + } lightCell operator*(lightCell cell) { return lightCell(r*cell.r,g*cell.g,b*cell.b); From 6cd926b67e7eae7a12dc6f7fca80f85a5ad02d15 Mon Sep 17 00:00:00 2001 From: Warmist Date: Mon, 24 Jun 2013 00:10:52 +0300 Subject: [PATCH 24/72] fix for map_block lights, fix for gem window color, dimmed the plant lights. --- plugins/rendermax/renderer_light.cpp | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/plugins/rendermax/renderer_light.cpp b/plugins/rendermax/renderer_light.cpp index 681afdc19..01bde38be 100644 --- a/plugins/rendermax/renderer_light.cpp +++ b/plugins/rendermax/renderer_light.cpp @@ -244,9 +244,9 @@ void addPlant(const std::string& id,std::map& map,const lightSo void lightingEngineViewscreen::initRawSpecific() { addPlant("TOWER_CAP",glowPlants,lightSource(lightCell(0.65,0.65,0.65),6)); - addPlant("MUSHROOM_CUP_DIMPLE",glowPlants,lightSource(lightCell(0.03,0.03,0.9),3)); - addPlant("CAVE MOSS",glowPlants,lightSource(lightCell(0.3,0.3,0.9),2)); - addPlant("MUSHROOM_HELMET_PLUMP",glowPlants,lightSource(lightCell(0.5,0.2,0.9),2)); + addPlant("MUSHROOM_CUP_DIMPLE",glowPlants,lightSource(lightCell(0.03,0.03,0.5),3)); + addPlant("CAVE MOSS",glowPlants,lightSource(lightCell(0.1,0.1,0.4),2)); + addPlant("MUSHROOM_HELMET_PLUMP",glowPlants,lightSource(lightCell(0.2,0.1,0.6),2)); } static size_t max_list_size = 100000; // Avoid iterating over huge lists void lightingEngineViewscreen::doOcupancyAndLights() @@ -332,7 +332,7 @@ void lightingEngineViewscreen::doOcupancyAndLights() DFHack::MaterialInfo mat(bld->mat_index,bld->mat_type); if(mat.isInorganic()) { - int color=mat.inorganic->material.build_color[0]+8*mat.inorganic->material.build_color[2]; + int color=mat.inorganic->material.basic_color[0]+8*mat.inorganic->material.basic_color[2]; curCell*=getStandartColor(color); } } @@ -370,7 +370,7 @@ void lightingEngineViewscreen::doOcupancyAndLights() } for(int blockx=window_x/16;blockx<(window_x+vpW)/16;blockx++) - for(int blocky=window_y/16;blocky<(window_x+vpW)/16;blocky++) + for(int blocky=window_y/16;blocky<(window_y+vpH)/16;blocky++) { df::map_block* block=Maps::getBlock(blockx,blocky,window_z); From 3d6f4d347820e7ee0263ef4edbae3cc05166c8b9 Mon Sep 17 00:00:00 2001 From: Warmist Date: Mon, 24 Jun 2013 00:36:43 +0300 Subject: [PATCH 25/72] Added transparency to ice walls --- plugins/rendermax/renderer_light.cpp | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/plugins/rendermax/renderer_light.cpp b/plugins/rendermax/renderer_light.cpp index 01bde38be..3f8f58fff 100644 --- a/plugins/rendermax/renderer_light.cpp +++ b/plugins/rendermax/renderer_light.cpp @@ -242,7 +242,7 @@ void addPlant(const std::string& id,std::map& map,const lightSo } } void lightingEngineViewscreen::initRawSpecific() -{ +{ addPlant("TOWER_CAP",glowPlants,lightSource(lightCell(0.65,0.65,0.65),6)); addPlant("MUSHROOM_CUP_DIMPLE",glowPlants,lightSource(lightCell(0.03,0.03,0.5),3)); addPlant("CAVE MOSS",glowPlants,lightSource(lightCell(0.1,0.1,0.4),2)); @@ -282,11 +282,15 @@ void lightingEngineViewscreen::doOcupancyAndLights() df::tile_designation* d=Maps::getTileDesignation(x,y,window_z); df::tile_designation* d2=Maps::getTileDesignation(x,y,window_z-1); df::tile_occupancy* o=Maps::getTileOccupancy(x,y,window_z); + df::tiletype_material m=ENUM_ATTR(tiletype,material,*type); if(!o || !d ) continue; if(shape==df::tiletype_shape::BROOK_BED || shape==df::tiletype_shape::WALL || shape==df::tiletype_shape::TREE || d->bits.hidden ) { - curCell=lightCell(0,0,0); + if(shape==df::tiletype_shape::WALL && m==df::tiletype_material::FROZEN_LIQUID) + curCell*=lightCell(0.7,0.7,0.9); + else + curCell=lightCell(0,0,0); } else if(o->bits.building) { @@ -350,7 +354,6 @@ void lightingEngineViewscreen::doOcupancyAndLights() { curCell*=lightCell(0.7f,0.7f,0.8f); } - //lights if((d->bits.liquid_type && d->bits.flow_size>0)|| ( From 8c9de7981216d7db6b124a292e82f5308623d343 Mon Sep 17 00:00:00 2001 From: Warmist Date: Mon, 24 Jun 2013 00:53:39 +0300 Subject: [PATCH 26/72] Small fixes --- plugins/rendermax/renderer_light.cpp | 44 +++++++++++++--------------- 1 file changed, 21 insertions(+), 23 deletions(-) diff --git a/plugins/rendermax/renderer_light.cpp b/plugins/rendermax/renderer_light.cpp index 7eaa43460..ccc1ae55f 100644 --- a/plugins/rendermax/renderer_light.cpp +++ b/plugins/rendermax/renderer_light.cpp @@ -283,37 +283,35 @@ void lightingEngineViewscreen::doOcupancyAndLights() { df::map_block* block=Maps::getBlock(blockx,blocky,ZZ); totalBlank = 0; + if(block) for(int block_x = 0; block_x < 16; block_x++) for(int block_y = 0; block_y < 16; block_y++) { - if(block) - { - df::tiletype type = block->tiletype[block_x][block_y]; - df::tile_designation d = block->designation[block_x][block_y]; - df::tile_occupancy o = block->occupancy[block_x][block_y]; - df::tiletype_shape shape = ENUM_ATTR(tiletype,shape,type); - df::tiletype_shape_basic basic_shape = ENUM_ATTR(tiletype_shape, basic_shape, shape); + df::tiletype type = block->tiletype[block_x][block_y]; + df::tile_designation d = block->designation[block_x][block_y]; + df::tile_occupancy o = block->occupancy[block_x][block_y]; + df::tiletype_shape shape = ENUM_ATTR(tiletype,shape,type); + df::tiletype_shape_basic basic_shape = ENUM_ATTR(tiletype_shape, basic_shape, shape); - if(basic_shape==df::tiletype_shape_basic::Wall) - { - cellArray[block_x][block_y]=lightCell(0,0,0); - } - else if(basic_shape==df::tiletype_shape_basic::Floor || basic_shape==df::tiletype_shape_basic::Ramp || basic_shape==df::tiletype_shape_basic::Stair) - { - if(ZZ!=window_z) - { - cellArray[block_x][block_y]=lightCell(0,0,0); - } - } - if(d.bits.liquid_type == df::enums::tile_liquid::Water && d.bits.flow_size) - { - cellArray[block_x][block_y] *= (lightCell(1,1,1) - (lightCell(1,1,1) - lightCell(0.63f,0.63f,0.75f))*(d.bits.flow_size/7)); - } - else if(d.bits.liquid_type == df::enums::tile_liquid::Magma && d.bits.flow_size > 3) + if(basic_shape==df::tiletype_shape_basic::Wall) + { + cellArray[block_x][block_y]=lightCell(0,0,0); + } + else if(basic_shape==df::tiletype_shape_basic::Floor || basic_shape==df::tiletype_shape_basic::Ramp || basic_shape==df::tiletype_shape_basic::Stair) + { + if(ZZ!=window_z) { cellArray[block_x][block_y]=lightCell(0,0,0); } } + if(d.bits.liquid_type == df::enums::tile_liquid::Water && d.bits.flow_size) + { + cellArray[block_x][block_y] *= (lightCell(1,1,1) - (lightCell(1,1,1) - lightCell(0.63f,0.63f,0.75f))*(d.bits.flow_size/7)); + } + else if(d.bits.liquid_type == df::enums::tile_liquid::Magma && d.bits.flow_size > 3) + { + cellArray[block_x][block_y]=lightCell(0,0,0); + } if(cellArray[block_x][block_y].r < 0.003f && cellArray[block_x][block_y].g < 0.003f && cellArray[block_x][block_y].b < 0.003f) totalBlank++; } From 736f9e85fc99dbb33a166e5c85fead2e41b143b7 Mon Sep 17 00:00:00 2001 From: Warmist Date: Mon, 24 Jun 2013 01:26:25 +0300 Subject: [PATCH 27/72] Fixed skylight --- plugins/rendermax/renderer_light.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/plugins/rendermax/renderer_light.cpp b/plugins/rendermax/renderer_light.cpp index ccc1ae55f..187b3d2d8 100644 --- a/plugins/rendermax/renderer_light.cpp +++ b/plugins/rendermax/renderer_light.cpp @@ -279,7 +279,7 @@ void lightingEngineViewscreen::doOcupancyAndLights() } int totalBlank = 0; int topLevel = df::global::world->map.z_count-1; - for(int ZZ = topLevel; (ZZ >= window_z) && totalBlank < 257; ZZ--) + for(int ZZ = topLevel; (ZZ >= window_z) && totalBlank < 256; ZZ--) { df::map_block* block=Maps::getBlock(blockx,blocky,ZZ); totalBlank = 0; @@ -324,7 +324,7 @@ void lightingEngineViewscreen::doOcupancyAndLights() pos.y = blocky*16+block_y; int wx=pos.x-window_x+vp.first.x; int wy=pos.y-window_y+vp.first.y; - + if(wx>=vp.first.x && wy>=vp.first.y && wx<=vp.second.x && wy<=vp.second.y) if(cellArray[block_x][block_y].r >= 0.003f && cellArray[block_x][block_y].g >= 0.003f && cellArray[block_x][block_y].b >= 0.003f) { lightSource sun=lightSource(cellArray[block_x][block_y],15); From 50073ae406474e270a37d262f9aab9652413a3f0 Mon Sep 17 00:00:00 2001 From: jj Date: Mon, 24 Jun 2013 00:45:45 +0200 Subject: [PATCH 28/72] rendermax: make citizen glow --- plugins/rendermax/renderer_light.cpp | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/plugins/rendermax/renderer_light.cpp b/plugins/rendermax/renderer_light.cpp index 187b3d2d8..05f1d2c96 100644 --- a/plugins/rendermax/renderer_light.cpp +++ b/plugins/rendermax/renderer_light.cpp @@ -2,12 +2,14 @@ #include #include +#include #include "Types.h" #include "modules/Gui.h" #include "modules/Screen.h" #include "modules/Maps.h" +#include "modules/Units.h" #include "df/graphic.h" #include "df/viewscreen_dwarfmodest.h" @@ -503,4 +505,15 @@ void lightingEngineViewscreen::doOcupancyAndLights() int tile=getIndex(wx,wy); addLight(tile,cursor); } -} \ No newline at end of file + lightSource citizen(lightCell(0.80f,0.80f,0.90f),6); + for (int i=0;iunits.active.size();++i) + { + df::unit *u = df::global::world->units.active[i]; + if (u->pos.z != window_z || + (u->pos.x < window_x || u->pos.x >= window_x+vpW) || + (u->pos.y < window_y || u->pos.y >= window_y+vpH)) + continue; + if (DFHack::Units::isCitizen(u)) + addLight(getIndex(u->pos.x-window_x+1, u->pos.y-window_y+1),citizen); + } +} From 2da136116dfa21b515cde77364fabbf3dff04a64 Mon Sep 17 00:00:00 2001 From: Japa Date: Mon, 24 Jun 2013 05:10:01 +0530 Subject: [PATCH 29/72] Added some fast checking for obstacles around lights, resulting in a huge speedup outside. --- plugins/rendermax/renderer_light.cpp | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/plugins/rendermax/renderer_light.cpp b/plugins/rendermax/renderer_light.cpp index 187b3d2d8..87eb210ad 100644 --- a/plugins/rendermax/renderer_light.cpp +++ b/plugins/rendermax/renderer_light.cpp @@ -168,8 +168,23 @@ void lightingEngineViewscreen::doFovs() radius*=flicker; power=power*flicker; } - plotCircle(i,j,radius, - std::bind(&lightingEngineViewscreen::doRay,this,power,i,j,_1,_2)); + int surrounds = 0; + lightCell curPower; + + if(lightUpCell(curPower = power, 0, 0,i+0, j+0)) + { + surrounds += lightUpCell(curPower = power, 0, 1,i+0, j+1); + surrounds += lightUpCell(curPower = power, 1, 1,i+1, j+1); + surrounds += lightUpCell(curPower = power, 1, 0,i+1, j+0); + surrounds += lightUpCell(curPower = power, 1,-1,i+1, j-1); + surrounds += lightUpCell(curPower = power, 0,-1,i+0, j-1); + surrounds += lightUpCell(curPower = power,-1,-1,i-1, j-1); + surrounds += lightUpCell(curPower = power,-1, 0,i-1, j+0); + surrounds += lightUpCell(curPower = power,-1, 1,i-1, j+1); + } + if(surrounds) + plotCircle(i,j,radius, + std::bind(&lightingEngineViewscreen::doRay,this,power,i,j,_1,_2)); } } } From fb5d248720f0de4d2971b09fb3ab8fd408ec383a Mon Sep 17 00:00:00 2001 From: jj Date: Mon, 24 Jun 2013 01:54:09 +0200 Subject: [PATCH 30/72] rendermax: basic daylight --- plugins/rendermax/renderer_light.cpp | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/plugins/rendermax/renderer_light.cpp b/plugins/rendermax/renderer_light.cpp index 05f1d2c96..633871e2a 100644 --- a/plugins/rendermax/renderer_light.cpp +++ b/plugins/rendermax/renderer_light.cpp @@ -253,13 +253,16 @@ void lightingEngineViewscreen::initRawSpecific() static size_t max_list_size = 100000; // Avoid iterating over huge lists void lightingEngineViewscreen::doOcupancyAndLights() { - lightSource sun(lightCell(1,1,1),15); + // TODO better curve (+red dawn ?) + float daycol = abs((*df::global::cur_year_tick % 1200) - 600.0) / 600.0; + lightCell sky_col(daycol, daycol, daycol); + lightSource sky(sky_col, 15); + lightSource lava(lightCell(0.8f,0.2f,0.2f),5); lightSource candle(lightCell(0.96f,0.84f,0.03f),5); lightSource torch(lightCell(0.9f,0.75f,0.3f),8); rect2d vp=getMapViewport(); - - + int window_x=*df::global::window_x; int window_y=*df::global::window_y; int window_z=*df::global::window_z; @@ -277,7 +280,7 @@ void lightingEngineViewscreen::doOcupancyAndLights() for(int block_x = 0; block_x < 16; block_x++) for(int block_y = 0; block_y < 16; block_y++) { - cellArray[block_x][block_y] = lightCell(1,1,1); + cellArray[block_x][block_y] = sky_col; } int totalBlank = 0; int topLevel = df::global::world->map.z_count-1; @@ -347,7 +350,7 @@ void lightingEngineViewscreen::doOcupancyAndLights() if(!type) { //unallocated, do sky - addLight(tile,sun); + addLight(tile,sky); continue; } df::tiletype_shape shape = ENUM_ATTR(tiletype,shape,*type); @@ -438,7 +441,7 @@ void lightingEngineViewscreen::doOcupancyAndLights() } if(d->bits.outside && d->bits.flow_size==0) { - addLight(tile,sun); + addLight(tile,sky); } } From b8d2ceb23b7845463e476b16e565d17da5a5dedf Mon Sep 17 00:00:00 2001 From: Japa Date: Mon, 24 Jun 2013 05:35:16 +0530 Subject: [PATCH 31/72] Made the low water check actually use floats. --- plugins/rendermax/renderer_light.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/plugins/rendermax/renderer_light.cpp b/plugins/rendermax/renderer_light.cpp index 87eb210ad..921ea814a 100644 --- a/plugins/rendermax/renderer_light.cpp +++ b/plugins/rendermax/renderer_light.cpp @@ -321,7 +321,7 @@ void lightingEngineViewscreen::doOcupancyAndLights() } if(d.bits.liquid_type == df::enums::tile_liquid::Water && d.bits.flow_size) { - cellArray[block_x][block_y] *= (lightCell(1,1,1) - (lightCell(1,1,1) - lightCell(0.63f,0.63f,0.75f))*(d.bits.flow_size/7)); + cellArray[block_x][block_y] *= (lightCell(1,1,1) - (lightCell(1,1,1) - lightCell(0.63f,0.63f,0.75f))*((float)d.bits.flow_size/7.0f)); } else if(d.bits.liquid_type == df::enums::tile_liquid::Magma && d.bits.flow_size > 3) { @@ -494,7 +494,7 @@ void lightingEngineViewscreen::doOcupancyAndLights() for(int i=0;iplants.size();i++) { df::plant* cPlant=block->plants[i]; - + df::coord2d pos=cPlant->pos; int wx=pos.x-window_x+vp.first.x; int wy=pos.y-window_y+vp.first.y; From b95683adb2567a713175e7ad5de7d927b7d74eca Mon Sep 17 00:00:00 2001 From: jj Date: Mon, 24 Jun 2013 02:22:30 +0200 Subject: [PATCH 32/72] rendermax: sunlight travels down stairs --- plugins/rendermax/renderer_light.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/plugins/rendermax/renderer_light.cpp b/plugins/rendermax/renderer_light.cpp index d5d19815a..8aa45cc14 100644 --- a/plugins/rendermax/renderer_light.cpp +++ b/plugins/rendermax/renderer_light.cpp @@ -317,13 +317,17 @@ void lightingEngineViewscreen::doOcupancyAndLights() { cellArray[block_x][block_y]=lightCell(0,0,0); } - else if(basic_shape==df::tiletype_shape_basic::Floor || basic_shape==df::tiletype_shape_basic::Ramp || basic_shape==df::tiletype_shape_basic::Stair) + else if(basic_shape==df::tiletype_shape_basic::Floor || basic_shape==df::tiletype_shape_basic::Ramp || shape==df::tiletype_shape::STAIR_UP) { if(ZZ!=window_z) { cellArray[block_x][block_y]=lightCell(0,0,0); } } + else if(shape==df::tiletype_shape::STAIR_DOWN || shape==df::tiletype_shape::STAIR_UPDOWN) + { + cellArray[block_x][block_y]*=lightCell(0.9,0.9,0.9); + } if(d.bits.liquid_type == df::enums::tile_liquid::Water && d.bits.flow_size) { cellArray[block_x][block_y] *= (lightCell(1,1,1) - (lightCell(1,1,1) - lightCell(0.63f,0.63f,0.75f))*(d.bits.flow_size/7)); From 19952b9139803155ba24aedcdb87e8448f9ce55f Mon Sep 17 00:00:00 2001 From: jj Date: Mon, 24 Jun 2013 02:27:43 +0200 Subject: [PATCH 33/72] rendermax: lights off when sleeping --- plugins/rendermax/renderer_light.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/rendermax/renderer_light.cpp b/plugins/rendermax/renderer_light.cpp index 8aa45cc14..01042fc95 100644 --- a/plugins/rendermax/renderer_light.cpp +++ b/plugins/rendermax/renderer_light.cpp @@ -535,7 +535,7 @@ void lightingEngineViewscreen::doOcupancyAndLights() (u->pos.x < window_x || u->pos.x >= window_x+vpW) || (u->pos.y < window_y || u->pos.y >= window_y+vpH)) continue; - if (DFHack::Units::isCitizen(u)) + if (DFHack::Units::isCitizen(u) && !u->counters.unconscious) addLight(getIndex(u->pos.x-window_x+1, u->pos.y-window_y+1),citizen); } } From abc9dc300ea084f0858dd34e1ddd37120f136a11 Mon Sep 17 00:00:00 2001 From: Warmist Date: Mon, 24 Jun 2013 03:47:42 +0300 Subject: [PATCH 34/72] Prelimenary work on advmode --- plugins/rendermax/renderer_light.cpp | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/plugins/rendermax/renderer_light.cpp b/plugins/rendermax/renderer_light.cpp index 187b3d2d8..41754c0fe 100644 --- a/plugins/rendermax/renderer_light.cpp +++ b/plugins/rendermax/renderer_light.cpp @@ -11,6 +11,7 @@ #include "df/graphic.h" #include "df/viewscreen_dwarfmodest.h" +#include "df/viewscreen_dungeonmodest.h" #include "df/flow_info.h" #include "df/world.h" #include "df/building.h" @@ -29,7 +30,15 @@ rect2d getMapViewport() const int AREA_MAP_WIDTH = 23; const int MENU_WIDTH = 30; if(!gps || !df::viewscreen_dwarfmodest::_identity.is_instance(DFHack::Gui::getCurViewscreen())) - return mkrect_wh(0,0,0,0); + { + if(gps && df::viewscreen_dungeonmodest::_identity.is_instance(DFHack::Gui::getCurViewscreen())) + { + return mkrect_wh(0,0,gps->dimx,gps->dimy); + } + else + return mkrect_wh(0,0,0,0); + + } int w=gps->dimx; int h=gps->dimy; int view_height=h-2; From 8271725320f669638587cfb9cec8433f9ac2cdc5 Mon Sep 17 00:00:00 2001 From: Japa Date: Mon, 24 Jun 2013 14:20:22 +0530 Subject: [PATCH 35/72] Some performance fixes and tweaks. Opaque blocks can now emit light. --- plugins/rendermax/renderer_light.cpp | 22 ++++++++++++++++------ plugins/rendermax/renderer_light.hpp | 2 +- 2 files changed, 17 insertions(+), 7 deletions(-) diff --git a/plugins/rendermax/renderer_light.cpp b/plugins/rendermax/renderer_light.cpp index fcf4a3b0e..3b95be1e9 100644 --- a/plugins/rendermax/renderer_light.cpp +++ b/plugins/rendermax/renderer_light.cpp @@ -25,6 +25,7 @@ using namespace DFHack; using df::coord2d; const float levelDim=0.2f; +const float RootTwo = 1.4142135623730950488016887242097f; rect2d getMapViewport() { @@ -94,8 +95,9 @@ void plotLine(int x0, int y0, int x1, int y1,std::function=mapPort.first.x && ty>=mapPort.first.y && tx<=mapPort.second.x && ty<=mapPort.second.y) { size_t tile=getIndex(tx,ty); - float dsq=dx*dx+dy*dy; - float dt=sqrt(dsq); + int dsq=dx*dx+dy*dy; + float dt=1; + if(dsq == 1) + dt=1; + else if(dsq == 2) + dt = RootTwo; + else if(dsq == 0) + dt = 0; + else + dt=sqrt((float)dsq); lightCell& v=ocupancy[tile]; lightSource& ls=lights[tile]; bool wallhack=false; @@ -173,7 +183,7 @@ void lightingEngineViewscreen::doFovs() int surrounds = 0; lightCell curPower; - if(lightUpCell(curPower = power, 0, 0,i+0, j+0)) + lightUpCell(curPower = power, 0, 0,i+0, j+0); { surrounds += lightUpCell(curPower = power, 0, 1,i+0, j+1); surrounds += lightUpCell(curPower = power, 1, 1,i+1, j+1); @@ -517,7 +527,7 @@ void lightingEngineViewscreen::doOcupancyAndLights() if(df::global::cursor->x>-30000) { lightSource cursor(lightCell(0.96f,0.84f,0.03f),11); - cursor.flicker=true; + cursor.flicker=false; int wx=df::global::cursor->x-window_x+vp.first.x; int wy=df::global::cursor->y-window_y+vp.first.y; int tile=getIndex(wx,wy); diff --git a/plugins/rendermax/renderer_light.hpp b/plugins/rendermax/renderer_light.hpp index 3744fd5bc..98ea502bd 100644 --- a/plugins/rendermax/renderer_light.hpp +++ b/plugins/rendermax/renderer_light.hpp @@ -127,4 +127,4 @@ private: int w,h; DFHack::rect2d mapPort; }; -#endif \ No newline at end of file +#endif From cb767531cf108c5bbb269326816c18620647cd08 Mon Sep 17 00:00:00 2001 From: Warmist Date: Mon, 24 Jun 2013 18:18:57 +0300 Subject: [PATCH 36/72] Made light plugin read configuration file (rendermax.lua) --- plugins/rendermax/renderer_light.cpp | 237 ++++++++++++++++++++++----- plugins/rendermax/renderer_light.hpp | 50 +++++- plugins/rendermax/rendermax.cpp | 23 ++- 3 files changed, 259 insertions(+), 51 deletions(-) diff --git a/plugins/rendermax/renderer_light.cpp b/plugins/rendermax/renderer_light.cpp index 935f30ac8..5b19d8385 100644 --- a/plugins/rendermax/renderer_light.cpp +++ b/plugins/rendermax/renderer_light.cpp @@ -5,6 +5,7 @@ #include #include "Types.h" +#include "LuaTools.h" #include "modules/Gui.h" #include "modules/Screen.h" @@ -68,7 +69,8 @@ rect2d getMapViewport() lightingEngineViewscreen::lightingEngineViewscreen(renderer_light* target):lightingEngine(target) { reinit(); - initRawSpecific(); + defaultSettings(); + loadSettings(); } void lightingEngineViewscreen::reinit() @@ -267,24 +269,43 @@ void addPlant(const std::string& id,std::map& map,const lightSo map[nId]=v; } } -void lightingEngineViewscreen::initRawSpecific() -{ - addPlant("TOWER_CAP",glowPlants,lightSource(lightCell(0.65,0.65,0.65),6)); - addPlant("MUSHROOM_CUP_DIMPLE",glowPlants,lightSource(lightCell(0.03,0.03,0.5),3)); - addPlant("CAVE MOSS",glowPlants,lightSource(lightCell(0.1,0.1,0.4),2)); - addPlant("MUSHROOM_HELMET_PLUMP",glowPlants,lightSource(lightCell(0.2,0.1,0.6),2)); +void lightingEngineViewscreen::applyMaterial(int tileId,const matLightDef& mat,float size) +{ + if(mat.isTransparent) + ocupancy[tileId]*=mat.transparency; + else + ocupancy[tileId]=lightCell(0,0,0); + if(mat.isEmiting) + addLight(tileId,mat.makeSource(size)); +} +bool lightingEngineViewscreen::applyMaterial(int tileId,int matType,int matIndex,float size,const matLightDef* def) +{ + auto it=matDefs.find(std::make_pair(matType,matIndex)); + if(it!=matDefs.end()) + { + applyMaterial(tileId,it->second,size); + return true; + } + else if(def) + { + applyMaterial(tileId,*def,size); + } + return false; } static size_t max_list_size = 100000; // Avoid iterating over huge lists void lightingEngineViewscreen::doOcupancyAndLights() { // TODO better curve (+red dawn ?) - float daycol = abs((*df::global::cur_year_tick % 1200) - 600.0) / 600.0; + float daycol = abs((*df::global::cur_year_tick % 1200) - 600.0) / 400.0; lightCell sky_col(daycol, daycol, daycol); lightSource sky(sky_col, 15); - lightSource lava(lightCell(0.8f,0.2f,0.2f),5); lightSource candle(lightCell(0.96f,0.84f,0.03f),5); lightSource torch(lightCell(0.9f,0.75f,0.3f),8); + + //perfectly blocking material + matLightDef matWall(lightCell(0,0,0)); + rect2d vp=getMapViewport(); int window_x=*df::global::window_x; @@ -373,7 +394,8 @@ void lightingEngineViewscreen::doOcupancyAndLights() int wy=y-window_y+vp.first.y; int tile=getIndex(wx,wy); lightCell& curCell=ocupancy[tile]; - curCell=lightCell(0.85f,0.85f,0.85f); + if(matAmbience.isTransparent) + curCell=matAmbience.transparency; df::tiletype* type = Maps::getTileType(x,y,window_z); if(!type) { @@ -390,8 +412,9 @@ void lightingEngineViewscreen::doOcupancyAndLights() continue; if(shape==df::tiletype_shape::BROOK_BED || shape==df::tiletype_shape::WALL || shape==df::tiletype_shape::TREE || d->bits.hidden ) { + //TODO split into wall ,etc... if(shape==df::tiletype_shape::WALL && m==df::tiletype_material::FROZEN_LIQUID) - curCell*=lightCell(0.7,0.7,0.9); + applyMaterial(tile,matIce); else curCell=lightCell(0,0,0); } @@ -411,20 +434,9 @@ void lightingEngineViewscreen::doOcupancyAndLights() { df::building_type type = bld->getType(); - if (type == df::enums::building_type::WindowGlass) + if (type == df::enums::building_type::WindowGlass || type==df::enums::building_type::WindowGem) { - if(bld->mat_type == 3)//green glass - { - curCell*=lightCell(0.1f,0.9f,0.5f); - } - else if(bld->mat_type == 4)//clear glass - { - curCell*=lightCell(0.5f,0.95f,0.9f); - } - else if(bld->mat_type == 5)//crystal glass - { - curCell*=lightCell(0.75f,0.95f,0.95f); - } + applyMaterial(tile,bld->mat_type,bld->mat_index); } if (type == df::enums::building_type::Table) { @@ -434,20 +446,11 @@ void lightingEngineViewscreen::doOcupancyAndLights() { addLight(tile,torch); } - if (type==df::enums::building_type::WindowGem) - { - DFHack::MaterialInfo mat(bld->mat_index,bld->mat_type); - if(mat.isInorganic()) - { - int color=mat.inorganic->material.basic_color[0]+8*mat.inorganic->material.basic_color[2]; - curCell*=getStandartColor(color); - } - } if(type==df::enums::building_type::Door) { df::building_doorst* door=static_cast(bld); if(door->door_flags.bits.closed) - curCell*=lightCell(0,0,0); + applyMaterial(tile,bld->mat_type,bld->mat_index,1,&matWall); } } } @@ -465,7 +468,7 @@ void lightingEngineViewscreen::doOcupancyAndLights() ) { - addLight(tile,lava); + addLight(tile,matLava.makeSource()); } if(d->bits.outside && d->bits.flow_size==0) { @@ -519,11 +522,7 @@ void lightingEngineViewscreen::doOcupancyAndLights() int tile=getIndex(wx,wy); if(wx>=vp.first.x && wy>=vp.first.y && wx<=vp.second.x && wy<=vp.second.y) { - auto it=glowPlants.find(cPlant->material); - if(it!=glowPlants.end()) - { - addLight(tile,it->second); - } + applyMaterial(tile,cPlant->material,-1); } } } @@ -534,7 +533,7 @@ void lightingEngineViewscreen::doOcupancyAndLights() int wx=df::global::cursor->x-window_x+vp.first.x; int wy=df::global::cursor->y-window_y+vp.first.y; int tile=getIndex(wx,wy); - addLight(tile,cursor); + applyMaterial(tile,matCursor); } lightSource citizen(lightCell(0.80f,0.80f,0.90f),6); for (int i=0;iunits.active.size();++i) @@ -548,3 +547,159 @@ void lightingEngineViewscreen::doOcupancyAndLights() addLight(getIndex(u->pos.x-window_x+1, u->pos.y-window_y+1),citizen); } } +lightCell lua_parseLightCell(lua_State* L) +{ + lightCell ret; + + lua_pushnumber(L,1); + lua_gettable(L,-2); + ret.r=lua_tonumber(L,-1); + lua_pop(L,1); + + lua_pushnumber(L,2); + lua_gettable(L,-2); + ret.g=lua_tonumber(L,-1); + lua_pop(L,1); + + lua_pushnumber(L,3); + lua_gettable(L,-2); + ret.b=lua_tonumber(L,-1); + lua_pop(L,1); + + Lua::GetOutput(L)->print("got cell(%f,%f,%f)\n",ret.r,ret.g,ret.b); + return ret; +} +matLightDef lua_parseMatDef(lua_State* L) +{ + + matLightDef ret; + lua_getfield(L,-1,"tr"); + if(ret.isTransparent=!lua_isnil(L,-1)) + { + ret.transparency=lua_parseLightCell(L); + } + lua_pop(L,1); + + lua_getfield(L,-1,"em"); + if(ret.isEmiting=!lua_isnil(L,-1)) + { + ret.emitColor=lua_parseLightCell(L); + lua_pop(L,1); + lua_getfield(L,-1,"rad"); + if(lua_isnil(L,-1)) + { + lua_pop(L,1); + luaL_error(L,"Material has emittance but no radius"); + } + else + ret.radius=lua_tonumber(L,-1); + lua_pop(L,1); + } + else + lua_pop(L,1); + //todo flags + return ret; +} +int lightingEngineViewscreen::parseMaterials(lua_State* L) +{ + auto engine= (lightingEngineViewscreen*)lua_touserdata(L, 1); + engine->matDefs.clear(); + //color_ostream* os=Lua::GetOutput(L); + Lua::StackUnwinder unwinder(L); + lua_getfield(L,2,"materials"); + if(!lua_istable(L,-1)) + { + luaL_error(L,"Materials table not found."); + return 0; + } + lua_pushnil(L); + while (lua_next(L, -2) != 0) { + int type=lua_tonumber(L,-2); + //os->print("Processing type:%d\n",type); + lua_pushnil(L); + while (lua_next(L, -2) != 0) { + int index=lua_tonumber(L,-2); + //os->print("\tProcessing index:%d\n",index); + engine->matDefs[std::make_pair(type,index)]=lua_parseMatDef(L); + + lua_pop(L, 1); + } + lua_pop(L, 1); + } + return 0; +} +#define LOAD_SPECIAL(lua_name,class_name) \ + lua_getfield(L,-1,#lua_name);\ + if(!lua_isnil(L,-1))engine->class_name=lua_parseMatDef(L);\ + lua_pop(L,1) +int lightingEngineViewscreen::parseSpecial(lua_State* L) +{ + auto engine= (lightingEngineViewscreen*)lua_touserdata(L, 1); + Lua::StackUnwinder unwinder(L); + lua_getfield(L,2,"special"); + if(!lua_istable(L,-1)) + { + luaL_error(L,"Special table not found."); + return 0; + } + LOAD_SPECIAL(LAVA,matLava); + LOAD_SPECIAL(FROZEN_LIQUID,matIce); + LOAD_SPECIAL(AMBIENT,matAmbience); + LOAD_SPECIAL(CURSOR,matCursor); + return 0; +} +#undef LOAD_SPECIAL +void lightingEngineViewscreen::defaultSettings() +{ + matAmbience=matLightDef(lightCell(0.85f,0.85f,0.85f)); + matLava=matLightDef(lightCell(0.8f,0.2f,0.2f),lightCell(0.8f,0.2f,0.2f),5); + matIce=matLightDef(lightCell(0.7f,0.7f,0.9f)); + matCursor=matLightDef(lightCell(0.96f,0.84f,0.03f),11); + matCursor.flicker=true; +} +void lightingEngineViewscreen::loadSettings() +{ + + const std::string settingsfile="rendermax.lua"; + CoreSuspender lock; + color_ostream_proxy out(Core::getInstance().getConsole()); + + lua_State* s=DFHack::Lua::Core::State; + lua_newtable(s); + int env=lua_gettop(s); + try{ + int ret=luaL_loadfile(s,settingsfile.c_str()); + if(ret==LUA_ERRFILE) + { + out.printerr("File not found:%s\n",settingsfile.c_str()); + } + else if(ret==LUA_ERRSYNTAX) + { + out.printerr("Syntax error:\n\t%s\n",lua_tostring(s,-1)); + } + else + { + lua_pushvalue(s,env); + + if(Lua::SafeCall(out,s,1,0)) + { + lua_pushcfunction(s, parseMaterials); + lua_pushlightuserdata(s, this); + lua_pushvalue(s,env); + Lua::SafeCall(out,s,2,0); + out.print("%d materials loaded\n",matDefs.size()); + + lua_pushcfunction(s, parseSpecial); + lua_pushlightuserdata(s, this); + lua_pushvalue(s,env); + Lua::SafeCall(out,s,2,0); + + } + } + } + catch(std::exception& e) + { + out.printerr("%s",e.what()); + } + lua_pop(s,1); +} \ No newline at end of file diff --git a/plugins/rendermax/renderer_light.hpp b/plugins/rendermax/renderer_light.hpp index 3744fd5bc..99797e309 100644 --- a/plugins/rendermax/renderer_light.hpp +++ b/plugins/rendermax/renderer_light.hpp @@ -72,6 +72,8 @@ public: virtual void updateWindow()=0; + virtual void loadSettings()=0; + protected: renderer_light* myRenderer; }; @@ -95,6 +97,29 @@ struct lightSource void combine(const lightSource& other); }; +struct matLightDef +{ + int mat_index; + int mat_type; + bool isTransparent; + lightCell transparency; + bool isEmiting; + bool sizeModifiesPower; + bool sizeModifiesRange; + bool flicker; + lightCell emitColor; + int radius; + matLightDef(){} + matLightDef(lightCell transparency,lightCell emit,int rad):isTransparent(true),isEmiting(true), + transparency(transparency),emitColor(emit),radius(rad){} + matLightDef(lightCell emit,int rad):isTransparent(false),isEmiting(true),emitColor(emit),radius(rad){} + matLightDef(lightCell transparency):isTransparent(true),isEmiting(false),transparency(transparency){} + lightSource makeSource(float size=1) const + { + //TODO implement sizeModifiesPower/range + return lightSource(emitColor,radius); + } +}; class lightingEngineViewscreen:public lightingEngine { public: @@ -105,24 +130,41 @@ public: void updateWindow(); + void loadSettings(); private: + void doOcupancyAndLights(); + void doRay(lightCell power,int cx,int cy,int tx,int ty); void doFovs(); bool lightUpCell(lightCell& power,int dx,int dy,int tx,int ty); bool addLight(int tileId,const lightSource& light); - void initRawSpecific(); + //apply material to cell + void applyMaterial(int tileId,const matLightDef& mat,float size=1); + //try to find and apply material, if failed return false, and if def!=null then apply def. + bool applyMaterial(int tileId,int matType,int matIndex,float size=1,const matLightDef* def=NULL); size_t inline getIndex(int x,int y) { return x*h+y; } + //maps std::vector lightMap; std::vector ocupancy; std::vector lights; + //settings - - std::map glowPlants; - std::map glowVeins; + ///set up sane settings if setting file does not exist. + void defaultSettings(); + + static int parseMaterials(lua_State* L); + static int parseSpecial(lua_State* L); + //special stuff + matLightDef matLava; + matLightDef matIce; + matLightDef matAmbience; + matLightDef matCursor; + //materials + std::map,matLightDef> matDefs; int w,h; DFHack::rect2d mapPort; diff --git a/plugins/rendermax/rendermax.cpp b/plugins/rendermax/rendermax.cpp index acfa9f92c..dda0d5d2c 100644 --- a/plugins/rendermax/rendermax.cpp +++ b/plugins/rendermax/rendermax.cpp @@ -304,12 +304,23 @@ static command_result rendermax(color_ostream &out, vector & parameters } else if(cmd=="light") { - removeOld(); - renderer_light *myRender=new renderer_light(df::global::enabler->renderer); - installNew(myRender,MODE_LIGHT); - engine=new lightingEngineViewscreen(myRender); - engine->calculate(); - engine->updateWindow(); + if(current_mode!=MODE_LIGHT || current_mode!=MODE_LIGHT_OFF) + { + removeOld(); + renderer_light *myRender=new renderer_light(df::global::enabler->renderer); + installNew(myRender,MODE_LIGHT); + engine=new lightingEngineViewscreen(myRender); + engine->calculate(); + engine->updateWindow(); + } + else if(current_mode==MODE_LIGHT && parameters.size()>1) + { + if(parameters[1]=="reload") + engine->loadSettings(); + } + else + out.printerr("Light mode already enabled"); + return CR_OK; } else if(cmd=="disable") From 4d9b7bd23d87309b37b431de10e7497428ab4dde Mon Sep 17 00:00:00 2001 From: Warmist Date: Tue, 25 Jun 2013 00:59:32 +0300 Subject: [PATCH 37/72] Major rewrite of opacity calculation. --- plugins/rendermax/renderer_light.cpp | 422 +++++++++++++++----------- plugins/rendermax/renderer_light.hpp | 14 +- plugins/rendermax/renderer_opengl.hpp | 18 +- 3 files changed, 266 insertions(+), 188 deletions(-) diff --git a/plugins/rendermax/renderer_light.cpp b/plugins/rendermax/renderer_light.cpp index 5b19d8385..b5458619f 100644 --- a/plugins/rendermax/renderer_light.cpp +++ b/plugins/rendermax/renderer_light.cpp @@ -4,12 +4,13 @@ #include #include -#include "Types.h" + #include "LuaTools.h" #include "modules/Gui.h" #include "modules/Screen.h" #include "modules/Maps.h" + #include "modules/Units.h" #include "df/graphic.h" @@ -64,7 +65,7 @@ rect2d getMapViewport() if(menu_pos < 2) menu_x = menu_x1; view_rb = menu_x; } - return mkrect_wh(1,1,view_rb,view_height+1); + return mkrect_wh(1,1,view_rb,view_height); } lightingEngineViewscreen::lightingEngineViewscreen(renderer_light* target):lightingEngine(target) { @@ -225,6 +226,10 @@ void lightingEngineViewscreen::updateWindow() myRenderer->invalidate(); return; } + + //if(showOcupancy) + //std::swap(ocupancy,myRenderer->lightGrid); + //else std::swap(lightMap,myRenderer->lightGrid); rect2d vp=getMapViewport(); @@ -269,6 +274,14 @@ void addPlant(const std::string& id,std::map& map,const lightSo map[nId]=v; } } +matLightDef* lightingEngineViewscreen::getMaterial(int matType,int matIndex) +{ + auto it=matDefs.find(std::make_pair(matType,matIndex)); + if(it!=matDefs.end()) + return &it->second; + else + return NULL; +} void lightingEngineViewscreen::applyMaterial(int tileId,const matLightDef& mat,float size) { if(mat.isTransparent) @@ -280,10 +293,10 @@ void lightingEngineViewscreen::applyMaterial(int tileId,const matLightDef& mat,f } bool lightingEngineViewscreen::applyMaterial(int tileId,int matType,int matIndex,float size,const matLightDef* def) { - auto it=matDefs.find(std::make_pair(matType,matIndex)); - if(it!=matDefs.end()) + matLightDef* m=getMaterial(matType,matIndex); + if(m) { - applyMaterial(tileId,it->second,size); + applyMaterial(tileId,*m,size); return true; } else if(def) @@ -292,207 +305,223 @@ bool lightingEngineViewscreen::applyMaterial(int tileId,int matType,int matIndex } return false; } -static size_t max_list_size = 100000; // Avoid iterating over huge lists -void lightingEngineViewscreen::doOcupancyAndLights() +lightCell lightingEngineViewscreen::propogateSun(MapExtras::Block* b, int x,int y,const lightCell& in,bool lastLevel) { - // TODO better curve (+red dawn ?) - float daycol = abs((*df::global::cur_year_tick % 1200) - 600.0) / 400.0; - lightCell sky_col(daycol, daycol, daycol); - lightSource sky(sky_col, 15); - - lightSource candle(lightCell(0.96f,0.84f,0.03f),5); - lightSource torch(lightCell(0.9f,0.75f,0.3f),8); - - //perfectly blocking material - matLightDef matWall(lightCell(0,0,0)); - - rect2d vp=getMapViewport(); + const lightCell matStairCase(0.9f,0.9f,0.9f); + lightCell ret=in; + coord2d innerCoord(x,y); + df::tiletype type = b->tiletypeAt(innerCoord); + df::tile_designation d = b->DesignationAt(innerCoord); + //df::tile_occupancy o = b->OccupancyAt(innerCoord); + df::tiletype_shape shape = ENUM_ATTR(tiletype,shape,type); + df::tiletype_shape_basic basic_shape = ENUM_ATTR(tiletype_shape, basic_shape, shape); + DFHack::t_matpair mat=b->staticMaterialAt(innerCoord); + df::tiletype_material tileMat= ENUM_ATTR(tiletype,material,type); + matLightDef* lightDef; + if(tileMat==df::tiletype_material::FROZEN_LIQUID) + lightDef=&matIce; + else + lightDef=getMaterial(mat.mat_type,mat.mat_index); + + if(!lightDef || !lightDef->isTransparent) + lightDef=&matWall; + if(basic_shape==df::tiletype_shape_basic::Wall) + { + ret*=lightDef->transparency; + } + else if(basic_shape==df::tiletype_shape_basic::Floor || basic_shape==df::tiletype_shape_basic::Ramp || shape==df::tiletype_shape::STAIR_UP) + { + if(!lastLevel) + ret*=lightDef->transparency; //TODO modify because floors have less material + } + else if(shape==df::tiletype_shape::STAIR_DOWN || shape==df::tiletype_shape::STAIR_UPDOWN) + { + ret*=matStairCase; + } + if(d.bits.liquid_type == df::enums::tile_liquid::Water && d.bits.flow_size) + { + ret *=matWater.transparency;// (lightCell(1,1,1) - (lightCell(1,1,1) - matWater)*((float)d.bits.flow_size/7.0f)); + } + else if(d.bits.liquid_type == df::enums::tile_liquid::Magma && d.bits.flow_size > 3) + { + ret *=matLava.transparency; + } + return ret; +} +coord2d lightingEngineViewscreen::worldToViewportCoord(const coord2d& in,const rect2d& r,const coord2d& window2d) +{ + return in-window2d+r.first; +} +bool lightingEngineViewscreen::isInViewport(const coord2d& in,const rect2d& r) +{ + if(in.x>=r.first.x && in.y>=r.first.y && in.x= df::global::world->map.x_count_block) endBlockx = df::global::world->map.x_count_block-1; - if(endBlocky >= df::global::world->map.y_count_block) endBlocky = df::global::world->map.y_count_block-1; - for(int blockx=window_x/16;blockx<=endBlockx;blockx++) - for(int blocky=window_y/16;blocky<=endBlocky;blocky++) + rect2d vp=getMapViewport(); + coord2d vpSize=rect_size(vp); + rect2d blockVp; + blockVp.first=window2d/16; + blockVp.second=(window2d+vpSize)/16; + blockVp.second.x=std::min(blockVp.second.x,(int16_t)df::global::world->map.x_count_block); + blockVp.second.y=std::min(blockVp.second.y,(int16_t)df::global::world->map.y_count_block); + //endof mess + for(int blockX=blockVp.first.x;blockX<=blockVp.second.x;blockX++) + for(int blockY=blockVp.first.y;blockY<=blockVp.second.y;blockY++) { - lightCell cellArray[16][16]; for(int block_x = 0; block_x < 16; block_x++) for(int block_y = 0; block_y < 16; block_y++) + cellArray[block_x][block_y] = sky.power; + + int emptyCell=0; + for(int z=df::global::world->map.z_count-1;z>=window_z && emptyCell<256;z--) { - cellArray[block_x][block_y] = sky_col; - } - int totalBlank = 0; - int topLevel = df::global::world->map.z_count-1; - for(int ZZ = topLevel; (ZZ >= window_z) && totalBlank < 256; ZZ--) - { - df::map_block* block=Maps::getBlock(blockx,blocky,ZZ); - totalBlank = 0; - if(block) + MapExtras::Block* b=map.BlockAt(DFCoord(blockX,blockY,z)); + if(!b) + continue; + emptyCell=0; for(int block_x = 0; block_x < 16; block_x++) for(int block_y = 0; block_y < 16; block_y++) { - df::tiletype type = block->tiletype[block_x][block_y]; - df::tile_designation d = block->designation[block_x][block_y]; - df::tile_occupancy o = block->occupancy[block_x][block_y]; - df::tiletype_shape shape = ENUM_ATTR(tiletype,shape,type); - df::tiletype_shape_basic basic_shape = ENUM_ATTR(tiletype_shape, basic_shape, shape); - - if(basic_shape==df::tiletype_shape_basic::Wall) - { - cellArray[block_x][block_y]=lightCell(0,0,0); - } - else if(basic_shape==df::tiletype_shape_basic::Floor || basic_shape==df::tiletype_shape_basic::Ramp || shape==df::tiletype_shape::STAIR_UP) - { - if(ZZ!=window_z) - { - cellArray[block_x][block_y]=lightCell(0,0,0); - } - } - else if(shape==df::tiletype_shape::STAIR_DOWN || shape==df::tiletype_shape::STAIR_UPDOWN) - { - cellArray[block_x][block_y]*=lightCell(0.9,0.9,0.9); - } - if(d.bits.liquid_type == df::enums::tile_liquid::Water && d.bits.flow_size) - { - cellArray[block_x][block_y] *= (lightCell(1,1,1) - (lightCell(1,1,1) - lightCell(0.63f,0.63f,0.75f))*((float)d.bits.flow_size/7.0f)); - } - else if(d.bits.liquid_type == df::enums::tile_liquid::Magma && d.bits.flow_size > 3) - { - cellArray[block_x][block_y]=lightCell(0,0,0); - } - if(cellArray[block_x][block_y].r < 0.003f && cellArray[block_x][block_y].g < 0.003f && cellArray[block_x][block_y].b < 0.003f) - totalBlank++; + lightCell& curCell=cellArray[block_x][block_y]; + curCell=propogateSun(b,block_x,block_y,curCell,z==window_z); + if(curCell.dot(curCell)<0.003f) + emptyCell++; } } + if(emptyCell==256) + continue; for(int block_x = 0; block_x < 16; block_x++) for(int block_y = 0; block_y < 16; block_y++) { + lightCell& curCell=cellArray[block_x][block_y]; df::coord2d pos; - pos.x = blockx*16+block_x; - pos.y = blocky*16+block_y; - int wx=pos.x-window_x+vp.first.x; - int wy=pos.y-window_y+vp.first.y; - if(wx>=vp.first.x && wy>=vp.first.y && wx<=vp.second.x && wy<=vp.second.y) - if(cellArray[block_x][block_y].r >= 0.003f && cellArray[block_x][block_y].g >= 0.003f && cellArray[block_x][block_y].b >= 0.003f) + pos.x = blockX*16+block_x; + pos.y = blockY*16+block_y; + pos=worldToViewportCoord(pos,vp,window2d); + if(isInViewport(pos,vp) && curCell.dot(curCell)>0.003f) { - lightSource sun=lightSource(cellArray[block_x][block_y],15); - addLight(getIndex(wx,wy),sun); + lightSource sun=lightSource(curCell,15); + addLight(getIndex(pos.x,pos.y),sun); } } - } - for(int x=window_x;xmap.x_count_block); + blockVp.second.y=std::min(blockVp.second.y,(int16_t)df::global::world->map.y_count_block); + + for(int blockX=blockVp.first.x;blockX<=blockVp.second.x;blockX++) + for(int blockY=blockVp.first.y;blockY<=blockVp.second.y;blockY++) { - int wx=x-window_x+vp.first.x; - int wy=y-window_y+vp.first.y; - int tile=getIndex(wx,wy); - lightCell& curCell=ocupancy[tile]; - if(matAmbience.isTransparent) - curCell=matAmbience.transparency; - df::tiletype* type = Maps::getTileType(x,y,window_z); - if(!type) - { - //unallocated, do sky - addLight(tile,sky); - continue; - } - df::tiletype_shape shape = ENUM_ATTR(tiletype,shape,*type); - df::tile_designation* d=Maps::getTileDesignation(x,y,window_z); - df::tile_designation* d2=Maps::getTileDesignation(x,y,window_z-1); - df::tile_occupancy* o=Maps::getTileOccupancy(x,y,window_z); - df::tiletype_material m=ENUM_ATTR(tiletype,material,*type); - if(!o || !d ) - continue; - if(shape==df::tiletype_shape::BROOK_BED || shape==df::tiletype_shape::WALL || shape==df::tiletype_shape::TREE || d->bits.hidden ) + MapExtras::Block* b=cache.BlockAt(DFCoord(blockX,blockY,window_z)); + MapExtras::Block* bDown=cache.BlockAt(DFCoord(blockX,blockY,window_z-1)); + if(!b) + continue; //empty blocks fixed by sun propagation + + for(int block_x = 0; block_x < 16; block_x++) + for(int block_y = 0; block_y < 16; block_y++) { - //TODO split into wall ,etc... - if(shape==df::tiletype_shape::WALL && m==df::tiletype_material::FROZEN_LIQUID) - applyMaterial(tile,matIce); - else + df::coord2d pos; + pos.x = blockX*16+block_x; + pos.y = blockY*16+block_y; + df::coord2d gpos=pos; + pos=worldToViewportCoord(pos,vp,window2d); + if(!isInViewport(pos,vp)) + continue; + int tile=getIndex(pos.x,pos.y); + lightCell& curCell=ocupancy[tile]; + curCell=matAmbience.transparency; + + + df::tiletype type = b->tiletypeAt(gpos); + df::tile_designation d = b->DesignationAt(gpos); + //df::tile_occupancy o = b->OccupancyAt(gpos); + df::tiletype_shape shape = ENUM_ATTR(tiletype,shape,type); + df::tiletype_shape_basic basic_shape = ENUM_ATTR(tiletype_shape, basic_shape, shape); + df::tiletype_material tileMat= ENUM_ATTR(tiletype,material,type); + + DFHack::t_matpair mat=b->staticMaterialAt(gpos); + + matLightDef* lightDef=getMaterial(mat.mat_type,mat.mat_index); + if(!lightDef || !lightDef->isTransparent) + lightDef=&matWall; + if(shape==df::tiletype_shape::BROOK_BED || d.bits.hidden ) + { curCell=lightCell(0,0,0); - } - else if(o->bits.building) - { - // Fixme: don't iterate the list every frame - size_t count = df::global::world->buildings.all.size(); - if (count <= max_list_size) + } + else if(shape==df::tiletype_shape::WALL) + { + if(tileMat==df::tiletype_material::FROZEN_LIQUID) + applyMaterial(tile,matIce); + else + applyMaterial(tile,*lightDef); + } + else if(!d.bits.liquid_type && d.bits.flow_size>3 ) { - for(size_t i = 0; i < count; i++) + applyMaterial(tile,matWater); + } + if(d.bits.liquid_type && d.bits.flow_size>0) + { + applyMaterial(tile,matLava); + } + else if(shape==df::tiletype_shape::EMPTY || shape==df::tiletype_shape::RAMP_TOP + || shape==df::tiletype_shape::STAIR_DOWN || shape==df::tiletype_shape::STAIR_UPDOWN) + { + if(bDown) { - df::building *bld = df::global::world->buildings.all[i]; - - if (window_z == bld->z && - x >= bld->x1 && x <= bld->x2 && - y >= bld->y1 && y <= bld->y2) - { - df::building_type type = bld->getType(); - - if (type == df::enums::building_type::WindowGlass || type==df::enums::building_type::WindowGem) - { - applyMaterial(tile,bld->mat_type,bld->mat_index); - } - if (type == df::enums::building_type::Table) - { - addLight(tile,candle); - } - if (type==df::enums::building_type::Statue) - { - addLight(tile,torch); - } - if(type==df::enums::building_type::Door) - { - df::building_doorst* door=static_cast(bld); - if(door->door_flags.bits.closed) - applyMaterial(tile,bld->mat_type,bld->mat_index,1,&matWall); - } - } + df::tile_designation d2=bDown->DesignationAt(gpos); + if(d2.bits.liquid_type && d2.bits.flow_size>0) + { + applyMaterial(tile,matLava); + } } } } - else if(!d->bits.liquid_type && d->bits.flow_size>3 ) - { - curCell*=lightCell(0.7f,0.7f,0.8f); - } - //lights - if((d->bits.liquid_type && d->bits.flow_size>0)|| - ( - (shape==df::tiletype_shape::EMPTY || shape==df::tiletype_shape::RAMP_TOP || shape==df::tiletype_shape::STAIR_DOWN || shape==df::tiletype_shape::STAIR_UPDOWN ) - && d2 && d2->bits.liquid_type && d2->bits.flow_size>0) - ) - { - - addLight(tile,matLava.makeSource()); - } - if(d->bits.outside && d->bits.flow_size==0) - { - addLight(tile,sky); - } - - } - for(int blockx=window_x/16;blockx<=endBlockx;blockx++) - for(int blocky=window_y/16;blocky<=endBlocky;blocky++) - { - df::map_block* block=Maps::getBlock(blockx,blocky,window_z); - - if(!block) - continue; + //flows + df::map_block* block=b->getRaw(); for(int i=0;iflows.size();i++) { df::flow_info* f=block->flows[i]; if(f && f->density>0 && f->type==df::flow_type::Dragonfire || f->type==df::flow_type::Fire) { df::coord2d pos=f->pos; - int wx=pos.x-window_x+vp.first.x; - int wy=pos.y-window_y+vp.first.y; - int tile=getIndex(wx,wy); - if(wx>=vp.first.x && wy>=vp.first.y && wx<=vp.second.x && wy<=vp.second.y) + pos=worldToViewportCoord(pos,vp,window2d); + int tile=getIndex(pos.x,pos.y); + if(isInViewport(pos,vp)) { lightCell fireColor; if(f->density>60) @@ -517,10 +546,9 @@ void lightingEngineViewscreen::doOcupancyAndLights() df::plant* cPlant=block->plants[i]; df::coord2d pos=cPlant->pos; - int wx=pos.x-window_x+vp.first.x; - int wy=pos.y-window_y+vp.first.y; - int tile=getIndex(wx,wy); - if(wx>=vp.first.x && wy>=vp.first.y && wx<=vp.second.x && wy<=vp.second.y) + pos=worldToViewportCoord(pos,vp,window2d); + int tile=getIndex(pos.x,pos.y); + if(isInViewport(pos,vp)) { applyMaterial(tile,cPlant->material,-1); } @@ -539,12 +567,45 @@ void lightingEngineViewscreen::doOcupancyAndLights() for (int i=0;iunits.active.size();++i) { df::unit *u = df::global::world->units.active[i]; - if (u->pos.z != window_z || - (u->pos.x < window_x || u->pos.x >= window_x+vpW) || - (u->pos.y < window_y || u->pos.y >= window_y+vpH)) - continue; + coord2d pos=worldToViewportCoord(coord2d(u->pos.x,u->pos.y),vp,window2d); + if(u->pos.z==window_z && isInViewport(pos,vp)) if (DFHack::Units::isCitizen(u) && !u->counters.unconscious) - addLight(getIndex(u->pos.x-window_x+1, u->pos.y-window_y+1),citizen); + addLight(getIndex(pos.x,pos.y),citizen); + } + //buildings + for(size_t i = 0; i < df::global::world->buildings.all.size(); i++) + { + df::building *bld = df::global::world->buildings.all[i]; + if(window_z!=bld->z) + continue; + df::coord2d p1(bld->x1,bld->y1); + df::coord2d p2(bld->x2,bld->y2); + p1=worldToViewportCoord(p1,vp,window2d); + p2=worldToViewportCoord(p1,vp,window2d); + if(isInViewport(p1,vp)||isInViewport(p2,vp)) + { + int tile=getIndex(p1.x,p1.y); //TODO multitile buildings. How they would work? + df::building_type type = bld->getType(); + + if (type == df::enums::building_type::WindowGlass || type==df::enums::building_type::WindowGem) + { + applyMaterial(tile,bld->mat_type,bld->mat_index); + } + if (type == df::enums::building_type::Table) + { + addLight(tile,candle); + } + if (type==df::enums::building_type::Statue) + { + addLight(tile,torch); + } + if(type==df::enums::building_type::Door) + { + df::building_doorst* door=static_cast(bld); + if(door->door_flags.bits.closed) + applyMaterial(tile,bld->mat_type,bld->mat_index,1,&matWall); + } + } } } lightCell lua_parseLightCell(lua_State* L) @@ -566,7 +627,7 @@ lightCell lua_parseLightCell(lua_State* L) ret.b=lua_tonumber(L,-1); lua_pop(L,1); - Lua::GetOutput(L)->print("got cell(%f,%f,%f)\n",ret.r,ret.g,ret.b); + //Lua::GetOutput(L)->print("got cell(%f,%f,%f)\n",ret.r,ret.g,ret.b); return ret; } matLightDef lua_parseMatDef(lua_State* L) @@ -643,6 +704,7 @@ int lightingEngineViewscreen::parseSpecial(lua_State* L) return 0; } LOAD_SPECIAL(LAVA,matLava); + LOAD_SPECIAL(WATER,matWater); LOAD_SPECIAL(FROZEN_LIQUID,matIce); LOAD_SPECIAL(AMBIENT,matAmbience); LOAD_SPECIAL(CURSOR,matCursor); @@ -653,9 +715,11 @@ void lightingEngineViewscreen::defaultSettings() { matAmbience=matLightDef(lightCell(0.85f,0.85f,0.85f)); matLava=matLightDef(lightCell(0.8f,0.2f,0.2f),lightCell(0.8f,0.2f,0.2f),5); + matWater=matLightDef(lightCell(0.6f,0.6f,0.8f)); matIce=matLightDef(lightCell(0.7f,0.7f,0.9f)); matCursor=matLightDef(lightCell(0.96f,0.84f,0.03f),11); matCursor.flicker=true; + matWall=matLightDef(lightCell(0,0,0)); } void lightingEngineViewscreen::loadSettings() { diff --git a/plugins/rendermax/renderer_light.hpp b/plugins/rendermax/renderer_light.hpp index 99797e309..1e29b11d2 100644 --- a/plugins/rendermax/renderer_light.hpp +++ b/plugins/rendermax/renderer_light.hpp @@ -3,6 +3,8 @@ #include "renderer_opengl.hpp" #include "Types.h" #include +#include "modules/MapCache.h" + struct renderer_light : public renderer_wrap { private: void colorizeTile(int x,int y) @@ -112,7 +114,7 @@ struct matLightDef matLightDef(){} matLightDef(lightCell transparency,lightCell emit,int rad):isTransparent(true),isEmiting(true), transparency(transparency),emitColor(emit),radius(rad){} - matLightDef(lightCell emit,int rad):isTransparent(false),isEmiting(true),emitColor(emit),radius(rad){} + matLightDef(lightCell emit,int rad):isTransparent(false),isEmiting(true),emitColor(emit),radius(rad),transparency(0,0,0){} matLightDef(lightCell transparency):isTransparent(true),isEmiting(false),transparency(transparency){} lightSource makeSource(float size=1) const { @@ -133,12 +135,18 @@ public: void loadSettings(); private: - void doOcupancyAndLights(); + df::coord2d worldToViewportCoord(const df::coord2d& in,const DFHack::rect2d& r,const df::coord2d& window2d) ; + bool isInViewport(const df::coord2d& in,const DFHack::rect2d& r); + void doSun(const lightSource& sky,MapExtras::MapCache& map); + void doOcupancyAndLights(); + lightCell propogateSun(MapExtras::Block* b, int x,int y,const lightCell& in,bool lastLevel); void doRay(lightCell power,int cx,int cy,int tx,int ty); void doFovs(); bool lightUpCell(lightCell& power,int dx,int dy,int tx,int ty); bool addLight(int tileId,const lightSource& light); + + matLightDef* getMaterial(int matType,int matIndex); //apply material to cell void applyMaterial(int tileId,const matLightDef& mat,float size=1); //try to find and apply material, if failed return false, and if def!=null then apply def. @@ -163,6 +171,8 @@ private: matLightDef matIce; matLightDef matAmbience; matLightDef matCursor; + matLightDef matWall; + matLightDef matWater; //materials std::map,matLightDef> matDefs; diff --git a/plugins/rendermax/renderer_opengl.hpp b/plugins/rendermax/renderer_opengl.hpp index 6d21a8b4c..cdab20af3 100644 --- a/plugins/rendermax/renderer_opengl.hpp +++ b/plugins/rendermax/renderer_opengl.hpp @@ -195,19 +195,19 @@ struct lightCell { } - lightCell operator-(lightCell cell) + lightCell operator-(lightCell cell) const { return lightCell(r-cell.r,g-cell.g,b-cell.b); } - lightCell operator*(float val) + lightCell operator*(float val)const { return lightCell(r*val,g*val,b*val); } - lightCell operator/(float val) + lightCell operator/(float val) const { return lightCell(r/val,g/val,b/val); } - lightCell operator*(lightCell cell) + lightCell operator*(lightCell cell) const { return lightCell(r*cell.r,g*cell.g,b*cell.b); } @@ -216,16 +216,20 @@ struct lightCell r*=cell.r; g*=cell.g; b*=cell.b; - return lightCell(r,g,b); + return *this; } - lightCell operator+(const lightCell& other) + lightCell operator+(const lightCell& other) const { return lightCell(r+other.r,g+other.g,b+other.b); } - bool operator<(const lightCell& other) + bool operator<(const lightCell& other) const { return r Date: Tue, 25 Jun 2013 01:25:38 +0300 Subject: [PATCH 38/72] Plantfix, viewport height fix, and fov viewport fix. --- plugins/rendermax/renderer_light.cpp | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/plugins/rendermax/renderer_light.cpp b/plugins/rendermax/renderer_light.cpp index b5458619f..047eb04aa 100644 --- a/plugins/rendermax/renderer_light.cpp +++ b/plugins/rendermax/renderer_light.cpp @@ -65,7 +65,7 @@ rect2d getMapViewport() if(menu_pos < 2) menu_x = menu_x1; view_rb = menu_x; } - return mkrect_wh(1,1,view_rb,view_height); + return mkrect_wh(1,1,view_rb,view_height+1); } lightingEngineViewscreen::lightingEngineViewscreen(renderer_light* target):lightingEngine(target) { @@ -121,8 +121,7 @@ lightCell blend(lightCell a,lightCell b) } bool lightingEngineViewscreen::lightUpCell(lightCell& power,int dx,int dy,int tx,int ty) { - - if(tx>=mapPort.first.x && ty>=mapPort.first.y && tx<=mapPort.second.x && ty<=mapPort.second.y) + if(isInViewport(coord2d(tx,ty),mapPort)) { size_t tile=getIndex(tx,ty); float dsq=dx*dx+dy*dy; @@ -511,8 +510,11 @@ void lightingEngineViewscreen::doOcupancyAndLights() } } } - //flows + df::map_block* block=b->getRaw(); + if(!block) + continue; + //flows for(int i=0;iflows.size();i++) { df::flow_info* f=block->flows[i]; @@ -541,6 +543,7 @@ void lightingEngineViewscreen::doOcupancyAndLights() } } } + //plants for(int i=0;iplants.size();i++) { df::plant* cPlant=block->plants[i]; @@ -550,7 +553,7 @@ void lightingEngineViewscreen::doOcupancyAndLights() int tile=getIndex(pos.x,pos.y); if(isInViewport(pos,vp)) { - applyMaterial(tile,cPlant->material,-1); + applyMaterial(tile,419,cPlant->material); } } } From 5265f107b0a027a91b5c033a50531bab5667e9be Mon Sep 17 00:00:00 2001 From: Japa Date: Tue, 25 Jun 2013 16:33:01 +0530 Subject: [PATCH 39/72] Added more advanced sun light calculation --- plugins/rendermax/renderer_light.cpp | 29 ++++++----- plugins/rendermax/renderer_light.hpp | 2 +- plugins/rendermax/renderer_opengl.hpp | 9 ++++ plugins/rendermax/rendermax.lua | 69 +++++++++++++++++++++++++++ 4 files changed, 95 insertions(+), 14 deletions(-) create mode 100644 plugins/rendermax/rendermax.lua diff --git a/plugins/rendermax/renderer_light.cpp b/plugins/rendermax/renderer_light.cpp index 4289ca8fd..4d72dc74a 100644 --- a/plugins/rendermax/renderer_light.cpp +++ b/plugins/rendermax/renderer_light.cpp @@ -144,9 +144,7 @@ bool lightingEngineViewscreen::lightUpCell(lightCell& power,int dx,int dy,int tx if (dsq>0 && !wallhack) { - power.r=power.r*(pow(v.r,dt)); - power.g=power.g*(pow(v.g,dt)); - power.b=power.b*(pow(v.b,dt)); + power*=v.power(dt); } if(ls.radius>0 && dsq>0) { @@ -291,10 +289,15 @@ matLightDef* lightingEngineViewscreen::getMaterial(int matType,int matIndex) else return NULL; } -void lightingEngineViewscreen::applyMaterial(int tileId,const matLightDef& mat,float size) +void lightingEngineViewscreen::applyMaterial(int tileId,const matLightDef& mat,float size, float thickness) { if(mat.isTransparent) - ocupancy[tileId]*=mat.transparency; + { + if(thickness > 0.999 && thickness < 1.001) + ocupancy[tileId]*=mat.transparency; + else + ocupancy[tileId]*=(mat.transparency.power(thickness)); + } else ocupancy[tileId]=lightCell(0,0,0); if(mat.isEmiting) @@ -342,19 +345,19 @@ lightCell lightingEngineViewscreen::propogateSun(MapExtras::Block* b, int x,int else if(basic_shape==df::tiletype_shape_basic::Floor || basic_shape==df::tiletype_shape_basic::Ramp || shape==df::tiletype_shape::STAIR_UP) { if(!lastLevel) - ret*=lightDef->transparency; //TODO modify because floors have less material + ret*=lightDef->transparency.power(1.0f/7.0f); } else if(shape==df::tiletype_shape::STAIR_DOWN || shape==df::tiletype_shape::STAIR_UPDOWN) { ret*=matStairCase; } - if(d.bits.liquid_type == df::enums::tile_liquid::Water && d.bits.flow_size) + if(d.bits.liquid_type == df::enums::tile_liquid::Water && d.bits.flow_size > 0) { - ret *=matWater.transparency;// (lightCell(1,1,1) - (lightCell(1,1,1) - matWater)*((float)d.bits.flow_size/7.0f)); + ret *=matWater.transparency.power((float)d.bits.flow_size/7.0f); } - else if(d.bits.liquid_type == df::enums::tile_liquid::Magma && d.bits.flow_size > 3) + else if(d.bits.liquid_type == df::enums::tile_liquid::Magma && d.bits.flow_size > 0) { - ret *=matLava.transparency; + ret *=matLava.transparency.power((float)d.bits.flow_size/7.0f); } return ret; } @@ -429,7 +432,7 @@ void lightingEngineViewscreen::doSun(const lightSource& sky,MapExtras::MapCache& void lightingEngineViewscreen::doOcupancyAndLights() { // TODO better curve (+red dawn ?) - float daycol = abs((*df::global::cur_year_tick % 1200) - 600.0) / 400.0; + float daycol = 1;//abs((*df::global::cur_year_tick % 1200) - 600.0) / 400.0; lightCell sky_col(daycol, daycol, daycol); lightSource sky(sky_col, 15); @@ -499,9 +502,9 @@ void lightingEngineViewscreen::doOcupancyAndLights() else applyMaterial(tile,*lightDef); } - else if(!d.bits.liquid_type && d.bits.flow_size>3 ) + else if(!d.bits.liquid_type && d.bits.flow_size>0 ) { - applyMaterial(tile,matWater); + applyMaterial(tile,matWater, 1, (float)d.bits.flow_size/7.0f); } if(d.bits.liquid_type && d.bits.flow_size>0) { diff --git a/plugins/rendermax/renderer_light.hpp b/plugins/rendermax/renderer_light.hpp index 4d10951fc..285caa5a2 100644 --- a/plugins/rendermax/renderer_light.hpp +++ b/plugins/rendermax/renderer_light.hpp @@ -148,7 +148,7 @@ private: matLightDef* getMaterial(int matType,int matIndex); //apply material to cell - void applyMaterial(int tileId,const matLightDef& mat,float size=1); + void applyMaterial(int tileId,const matLightDef& mat,float size=1, float thickness = 1); //try to find and apply material, if failed return false, and if def!=null then apply def. bool applyMaterial(int tileId,int matType,int matIndex,float size=1,const matLightDef* def=NULL); size_t inline getIndex(int x,int y) diff --git a/plugins/rendermax/renderer_opengl.hpp b/plugins/rendermax/renderer_opengl.hpp index cdab20af3..6beba522f 100644 --- a/plugins/rendermax/renderer_opengl.hpp +++ b/plugins/rendermax/renderer_opengl.hpp @@ -13,6 +13,7 @@ #include "df/zoom_commands.h" #include "df/texture_handler.h" #include "df/graphic.h" +#include using df::renderer; using df::init; @@ -230,6 +231,14 @@ struct lightCell { return r*other.r+g*other.g+b*other.b; } + lightCell power(const float exp) const + { + return lightCell(pow(r, exp), pow(g, exp), pow(b, exp)); + } + lightCell power(const int exp) const + { + return lightCell(pow(r, exp), pow(g, exp), pow(b, exp)); + } }; struct renderer_test : public renderer_wrap { private: diff --git a/plugins/rendermax/rendermax.lua b/plugins/rendermax/rendermax.lua new file mode 100644 index 000000000..762116c0b --- /dev/null +++ b/plugins/rendermax/rendermax.lua @@ -0,0 +1,69 @@ +--scroll down to the end for configuration +ret={...} +ret=ret[1] +ret.materials={} +ret.buildings={} +ret.special={} +for k,v in pairs(ret) do + _ENV[k]=v +end +-- add material by id (index,mat pair or token string or a type number), flags is a table of strings +-- supported flags: +-- flicker +-- sizeModifiesPower +-- sizeModifiesRange +function addMaterial(id,transparency,emitance,radius,flags) + local matinfo + if type(id)=="string" then + matinfo=dfhack.matinfo.find(id) + elseif type(id)=="table" then + matinfo=dfhack.matinfo.decode(id[1],id[2]) + else + matinfo=dfhack.matinfo.decode(id,0) + end + if matinfo==nil then + error("Material not found") + end + materials[matinfo.type]=materials[matinfo.type] or {} + materials[matinfo.type][matinfo.index]=makeMaterialDef(transparency,emitance,radius,flags) +end +function addBuilding(id,transparency,emitance,radius,flags) + --stuff +end +function makeMaterialDef(transparency,emitance,radius,flags) + local flg + if flags then + flg={} + for k,v in ipairs(flags) do + flg[v]=true + end + end + return {tr=transparency,em=emitance,rad=radius,flags=flg} +end +------------------------------------------------------------------------ +---------------- Configuration Starts Here ------------------------- +------------------------------------------------------------------------ +--special things +special.LAVA=makeMaterialDef({0.8,0.2,0.2},{0.8,0.2,0.2},5) +special.WATER=makeMaterialDef({0.5,0.5,0.8}) +special.FROZEN_LIQUID=makeMaterialDef({0.2,0.7,0.9}) -- ice +special.AMBIENT=makeMaterialDef({0.85,0.85,0.85}) --ambient fog +special.CURSOR=makeMaterialDef({1,1,1},{0.96,0.84,0.03},11, {"flicker"}) +--TODO dragonfire +--TODO daylight +--materials + + +-- glasses +addMaterial("GLASS_GREEN",{0.1,0.9,0.5}) +addMaterial("GLASS_CLEAR",{0.5,0.95,0.9}) +addMaterial("GLASS_CRYSTAL",{0.75,0.95,0.95}) +-- Plants +addMaterial("PLANT:TOWER_CAP",nil,{0.65,0.65,0.65},6) +addMaterial("PLANT:MUSHROOM_CUP_DIMPLE",nil,{0.03,0.03,0.5},3) +addMaterial("PLANT:CAVE MOSS",nil,{0.1,0.1,0.4},2) +addMaterial("PLANT:MUSHROOM_HELMET_PLUMP",nil,{0.2,0.1,0.6},2) +-- inorganics +addMaterial("INORGANIC:ADAMANTINE",{0.1,0.3,0.3},{0.1,0.3,0.3},4) +-- TODO gems +--buildings From 57e68aaee96538041fa86f8d3c18e329cda4c22a Mon Sep 17 00:00:00 2001 From: Japa Date: Tue, 25 Jun 2013 16:44:44 +0530 Subject: [PATCH 40/72] Added cmake info for the config lua. --- plugins/rendermax/CMakeLists.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/plugins/rendermax/CMakeLists.txt b/plugins/rendermax/CMakeLists.txt index fb8cc7724..a05294a09 100644 --- a/plugins/rendermax/CMakeLists.txt +++ b/plugins/rendermax/CMakeLists.txt @@ -35,3 +35,5 @@ ELSE(UNIX) ENDIF(UNIX) # this makes sure all the stuff is put in proper places and linked to dfhack DFHACK_PLUGIN(rendermax ${PROJECT_SRCS} LINK_LIBRARIES ${PROJECT_LIBS}) +install(FILES rendermax.lua + DESTINATION ${DFHACK_DATA_DESTINATION}) \ No newline at end of file From 3957fac531d2ac5a16003f5378972c3a32c814cc Mon Sep 17 00:00:00 2001 From: Warmist Date: Tue, 25 Jun 2013 19:34:38 +0300 Subject: [PATCH 41/72] Added citizen lights(only lights, no oclusion might change later). Added custom dim level (for darker nights and tunnels). --- plugins/rendermax/renderer_light.cpp | 17 ++++++++++++----- plugins/rendermax/renderer_light.hpp | 4 +++- plugins/rendermax/rendermax.lua | 2 ++ 3 files changed, 17 insertions(+), 6 deletions(-) diff --git a/plugins/rendermax/renderer_light.cpp b/plugins/rendermax/renderer_light.cpp index 4d72dc74a..fa88af8c3 100644 --- a/plugins/rendermax/renderer_light.cpp +++ b/plugins/rendermax/renderer_light.cpp @@ -27,7 +27,7 @@ using df::global::gps; using namespace DFHack; using df::coord2d; -const float levelDim=0.2f; + const float RootTwo = 1.4142135623730950488016887242097f; rect2d getMapViewport() @@ -572,21 +572,20 @@ void lightingEngineViewscreen::doOcupancyAndLights() } if(df::global::cursor->x>-30000) { - lightSource cursor(lightCell(0.96f,0.84f,0.03f),11); - cursor.flicker=false; int wx=df::global::cursor->x-window_x+vp.first.x; int wy=df::global::cursor->y-window_y+vp.first.y; int tile=getIndex(wx,wy); applyMaterial(tile,matCursor); } - lightSource citizen(lightCell(0.80f,0.80f,0.90f),6); + //citizen only emit light, if defined + if(matCitizen.isEmiting) for (int i=0;iunits.active.size();++i) { df::unit *u = df::global::world->units.active[i]; coord2d pos=worldToViewportCoord(coord2d(u->pos.x,u->pos.y),vp,window2d); if(u->pos.z==window_z && isInViewport(pos,vp)) if (DFHack::Units::isCitizen(u) && !u->counters.unconscious) - addLight(getIndex(pos.x,pos.y),citizen); + addLight(getIndex(pos.x,pos.y),matCitizen.makeSource()); } //buildings for(size_t i = 0; i < df::global::world->buildings.all.size(); i++) @@ -724,6 +723,10 @@ int lightingEngineViewscreen::parseSpecial(lua_State* L) LOAD_SPECIAL(FROZEN_LIQUID,matIce); LOAD_SPECIAL(AMBIENT,matAmbience); LOAD_SPECIAL(CURSOR,matCursor); + LOAD_SPECIAL(CITIZEN,matCitizen); + lua_getfield(L,-1,"LevelDim"); + if(!lua_isnil(L,-1) && lua_isnumber(L,-1))engine->levelDim=lua_tonumber(L,-1); + lua_pop(L,1); return 0; } #undef LOAD_SPECIAL @@ -736,6 +739,8 @@ void lightingEngineViewscreen::defaultSettings() matCursor=matLightDef(lightCell(0.96f,0.84f,0.03f),11); matCursor.flicker=true; matWall=matLightDef(lightCell(0,0,0)); + matCitizen=matLightDef(lightCell(0.8f,0.8f,0.9f),6); + levelDim=0.2f; } void lightingEngineViewscreen::loadSettings() { @@ -752,6 +757,7 @@ void lightingEngineViewscreen::loadSettings() if(ret==LUA_ERRFILE) { out.printerr("File not found:%s\n",settingsfile.c_str()); + lua_pop(s,1); } else if(ret==LUA_ERRSYNTAX) { @@ -775,6 +781,7 @@ void lightingEngineViewscreen::loadSettings() Lua::SafeCall(out,s,2,0); } + } } catch(std::exception& e) diff --git a/plugins/rendermax/renderer_light.hpp b/plugins/rendermax/renderer_light.hpp index 285caa5a2..cbc84ab29 100644 --- a/plugins/rendermax/renderer_light.hpp +++ b/plugins/rendermax/renderer_light.hpp @@ -111,7 +111,7 @@ struct matLightDef bool flicker; lightCell emitColor; int radius; - matLightDef(){} + matLightDef():isTransparent(false),isEmiting(false),transparency(0,0,0),emitColor(0,0,0),radius(0){} matLightDef(lightCell transparency,lightCell emit,int rad):isTransparent(true),isEmiting(true), transparency(transparency),emitColor(emit),radius(rad){} matLightDef(lightCell emit,int rad):isTransparent(false),isEmiting(true),emitColor(emit),radius(rad),transparency(0,0,0){} @@ -173,6 +173,8 @@ private: matLightDef matCursor; matLightDef matWall; matLightDef matWater; + matLightDef matCitizen; + float levelDim; //materials std::map,matLightDef> matDefs; diff --git a/plugins/rendermax/rendermax.lua b/plugins/rendermax/rendermax.lua index 762116c0b..86d4a2fe7 100644 --- a/plugins/rendermax/rendermax.lua +++ b/plugins/rendermax/rendermax.lua @@ -49,6 +49,8 @@ special.WATER=makeMaterialDef({0.5,0.5,0.8}) special.FROZEN_LIQUID=makeMaterialDef({0.2,0.7,0.9}) -- ice special.AMBIENT=makeMaterialDef({0.85,0.85,0.85}) --ambient fog special.CURSOR=makeMaterialDef({1,1,1},{0.96,0.84,0.03},11, {"flicker"}) +special.CITIZEN=makeMaterialDef(nil,{0.80f,0.80f,0.90f},6) +special.LevelDim=0.2 -- darkness. do not set to 0 --TODO dragonfire --TODO daylight --materials From 588ca8b8dd792e74bca0f8679ffcf9e99246fd1f Mon Sep 17 00:00:00 2001 From: Warmist Date: Tue, 25 Jun 2013 20:36:53 +0300 Subject: [PATCH 42/72] MAXIMUM SPEED UPDATE!!!!! --- plugins/rendermax/renderer_light.cpp | 14 ++++- plugins/rendermax/renderer_light.hpp | 2 + plugins/rendermax/renderer_opengl.hpp | 6 +- plugins/rendermax/rendermax.cpp | 87 ++++++++++++++++++++------- plugins/rendermax/rendermax.lua | 4 +- 5 files changed, 83 insertions(+), 30 deletions(-) diff --git a/plugins/rendermax/renderer_light.cpp b/plugins/rendermax/renderer_light.cpp index fa88af8c3..9e03ca9aa 100644 --- a/plugins/rendermax/renderer_light.cpp +++ b/plugins/rendermax/renderer_light.cpp @@ -209,6 +209,16 @@ void lightingEngineViewscreen::doFovs() } } } +void lightingEngineViewscreen::clear() +{ + lightMap.assign(lightMap.size(),lightCell(1,1,1)); + tthread::lock_guard guard(myRenderer->dataMutex); + if(lightMap.size()==myRenderer->lightGrid.size()) + { + std::swap(myRenderer->lightGrid,lightMap); + myRenderer->invalidate(); + } +} void lightingEngineViewscreen::calculate() { rect2d vp=getMapViewport(); @@ -240,8 +250,8 @@ void lightingEngineViewscreen::updateWindow() std::swap(lightMap,myRenderer->lightGrid); rect2d vp=getMapViewport(); - //myRenderer->invalidateRect(vp.first.x,vp.first.y,vp.second.x-vp.first.x,vp.second.y-vp.first.y); - myRenderer->invalidate(); + myRenderer->invalidateRect(vp.first.x,vp.first.y,vp.second.x-vp.first.x,vp.second.y-vp.first.y); + //myRenderer->invalidate(); //std::copy(lightMap.begin(),lightMap.end(),myRenderer->lightGrid.begin()); } void lightSource::combine(const lightSource& other) diff --git a/plugins/rendermax/renderer_light.hpp b/plugins/rendermax/renderer_light.hpp index cbc84ab29..a80d314d4 100644 --- a/plugins/rendermax/renderer_light.hpp +++ b/plugins/rendermax/renderer_light.hpp @@ -75,6 +75,7 @@ public: virtual void updateWindow()=0; virtual void loadSettings()=0; + virtual void clear()=0; protected: renderer_light* myRenderer; @@ -133,6 +134,7 @@ public: void updateWindow(); void loadSettings(); + void clear(); private: df::coord2d worldToViewportCoord(const df::coord2d& in,const DFHack::rect2d& r,const df::coord2d& window2d) ; diff --git a/plugins/rendermax/renderer_opengl.hpp b/plugins/rendermax/renderer_opengl.hpp index 6beba522f..57e81295b 100644 --- a/plugins/rendermax/renderer_opengl.hpp +++ b/plugins/rendermax/renderer_opengl.hpp @@ -124,13 +124,13 @@ public: for(int j=y;jdimy + j; - screen_old[index*4]=0; + screen_old[index*4]=screen[index*4]+1;//ensure tile is different } }; void invalidate() { - //invalidateRect(0,0,df::global::gps->dimx,df::global::gps->dimy); - df::global::gps->force_full_display_count++; + invalidateRect(0,0,df::global::gps->dimx,df::global::gps->dimy); + //df::global::gps->force_full_display_count++; }; protected: renderer* parent; diff --git a/plugins/rendermax/rendermax.cpp b/plugins/rendermax/rendermax.cpp index dda0d5d2c..482dfa6cb 100644 --- a/plugins/rendermax/rendermax.cpp +++ b/plugins/rendermax/rendermax.cpp @@ -3,6 +3,8 @@ #include +#include + #include "Core.h" #include "Console.h" #include "Export.h" @@ -15,12 +17,18 @@ #include "renderer_opengl.hpp" #include "renderer_light.hpp" +#include "df/viewscreen_dwarfmodest.h" +#include "df/viewscreen_dungeonmodest.h" + +using df::viewscreen_dungeonmodest; +using df::viewscreen_dwarfmodest; + using namespace DFHack; using std::vector; using std::string; enum RENDERER_MODE { - MODE_DEFAULT,MODE_TRIPPY,MODE_TRUECOLOR,MODE_LUA,MODE_LIGHT,MODE_LIGHT_OFF + MODE_DEFAULT,MODE_TRIPPY,MODE_TRUECOLOR,MODE_LUA,MODE_LIGHT }; RENDERER_MODE current_mode=MODE_DEFAULT; lightingEngine *engine=NULL; @@ -42,10 +50,44 @@ DFhackCExport command_result plugin_init (color_ostream &out, std::vector calculate(); + engine->updateWindow(); + } +}; +IMPLEMENT_VMETHOD_INTERPOSE(dwarmode_render_hook, render); + +struct dungeon_render_hook : viewscreen_dungeonmodest{ + typedef df::viewscreen_dungeonmodest interpose_base; + DEFINE_VMETHOD_INTERPOSE(void,render,()) + { + CoreSuspendClaimer suspend; + INTERPOSE_NEXT(render)(); + engine->calculate(); + engine->updateWindow(); + } +}; +IMPLEMENT_VMETHOD_INTERPOSE(dungeon_render_hook, render); + void removeOld() { + if(engine) + { + CoreSuspender lock; + INTERPOSE_HOOK(dwarmode_render_hook,render).apply(false); + INTERPOSE_HOOK(dungeon_render_hook,render).apply(false); + delete engine; + + } if(current_mode!=MODE_DEFAULT) delete df::global::enabler->renderer; + current_mode=MODE_DEFAULT; } void installNew(df::renderer* r,RENDERER_MODE newMode) @@ -231,6 +273,10 @@ DFHACK_PLUGIN_LUA_COMMANDS { DFHACK_LUA_COMMAND(invalidate), DFHACK_LUA_END }; + + + + static command_result rendermax(color_ostream &out, vector & parameters) { if(parameters.size()==0) @@ -304,19 +350,22 @@ static command_result rendermax(color_ostream &out, vector & parameters } else if(cmd=="light") { - if(current_mode!=MODE_LIGHT || current_mode!=MODE_LIGHT_OFF) + if(current_mode!=MODE_LIGHT) { removeOld(); renderer_light *myRender=new renderer_light(df::global::enabler->renderer); installNew(myRender,MODE_LIGHT); engine=new lightingEngineViewscreen(myRender); - engine->calculate(); - engine->updateWindow(); + INTERPOSE_HOOK(dwarmode_render_hook,render).apply(true); + INTERPOSE_HOOK(dungeon_render_hook,render).apply(true); } else if(current_mode==MODE_LIGHT && parameters.size()>1) { if(parameters[1]=="reload") + { + CoreSuspender suspend; engine->loadSettings(); + } } else out.printerr("Light mode already enabled"); @@ -327,8 +376,6 @@ static command_result rendermax(color_ostream &out, vector & parameters { if(current_mode==MODE_DEFAULT) out.print("%s\n","Not installed, doing nothing."); - else if(current_mode==MODE_LIGHT) - current_mode=MODE_LIGHT_OFF; else removeOld(); @@ -336,27 +383,21 @@ static command_result rendermax(color_ostream &out, vector & parameters } return CR_WRONG_USAGE; } -DFhackCExport command_result plugin_onupdate (color_ostream &out) + +DFhackCExport command_result plugin_shutdown(color_ostream &) +{ + removeOld(); + return CR_OK; +} +DFhackCExport command_result plugin_onstatechange(color_ostream &out, state_change_event event) { - if(engine) + if(event==SC_VIEWSCREEN_CHANGED) { - if(current_mode==MODE_LIGHT_OFF) + CoreSuspendClaimer suspender; + if(current_mode==MODE_LIGHT) { - delete engine; - engine=0; - removeOld(); - } - else - { - engine->calculate(); - engine->updateWindow(); + engine->clear(); } } - - return CR_OK; -} -DFhackCExport command_result plugin_shutdown(color_ostream &) -{ - removeOld(); return CR_OK; } \ No newline at end of file diff --git a/plugins/rendermax/rendermax.lua b/plugins/rendermax/rendermax.lua index 86d4a2fe7..4b19e2485 100644 --- a/plugins/rendermax/rendermax.lua +++ b/plugins/rendermax/rendermax.lua @@ -49,8 +49,8 @@ special.WATER=makeMaterialDef({0.5,0.5,0.8}) special.FROZEN_LIQUID=makeMaterialDef({0.2,0.7,0.9}) -- ice special.AMBIENT=makeMaterialDef({0.85,0.85,0.85}) --ambient fog special.CURSOR=makeMaterialDef({1,1,1},{0.96,0.84,0.03},11, {"flicker"}) -special.CITIZEN=makeMaterialDef(nil,{0.80f,0.80f,0.90f},6) -special.LevelDim=0.2 -- darkness. do not set to 0 +special.CITIZEN=makeMaterialDef(nil,{0.80,0.80,0.90},6) +special.LevelDim=0.2 -- darkness. Do not set to 0 --TODO dragonfire --TODO daylight --materials From f4923d6974de5d05065ff828ac1f035fb8958923 Mon Sep 17 00:00:00 2001 From: Japa Date: Tue, 25 Jun 2013 23:13:55 +0530 Subject: [PATCH 43/72] added square light volume, and automatic light radius. --- plugins/rendermax/renderer_light.cpp | 38 +++++++++++++++++++++++++--- plugins/rendermax/renderer_light.hpp | 5 +--- 2 files changed, 35 insertions(+), 8 deletions(-) diff --git a/plugins/rendermax/renderer_light.cpp b/plugins/rendermax/renderer_light.cpp index 4d72dc74a..6448532ec 100644 --- a/plugins/rendermax/renderer_light.cpp +++ b/plugins/rendermax/renderer_light.cpp @@ -30,6 +30,22 @@ using df::coord2d; const float levelDim=0.2f; const float RootTwo = 1.4142135623730950488016887242097f; +lightSource::lightSource(lightCell power,int radius):power(power),flicker(false) +{ + if(radius >= 0) + this->radius = radius; + else + { + float totalPower = power.r; + if(totalPower < power.g)totalPower = power.g; + if(totalPower < power.b)totalPower = power.b; + if(totalPower > 0 && levelDim > 0) + this->radius = (int)((log(levelDim/totalPower)/log(0.85f))) + 1; + else + this->radius = 0; + } +} + rect2d getMapViewport() { const int AREA_MAP_WIDTH = 23; @@ -99,6 +115,20 @@ void plotCircle(int xm, int ym, int r,std::function setPixel) if (r > x || err > y) err += ++x*2+1; /* e_xy+e_x > 0 or no 2nd y-step */ } while (x < 0); } +void plotSquare(int xm, int ym, int r,std::function setPixel) +{ + for(int x = 0; x <= r; x++) + { + setPixel(xm+r, ym+x); /* I.1 Quadrant */ + setPixel(xm+x, ym+r); /* I.2 Quadrant */ + setPixel(xm+r, ym-x); /* II.1 Quadrant */ + setPixel(xm+x, ym-r); /* II.2 Quadrant */ + setPixel(xm-r, ym-x); /* III.1 Quadrant */ + setPixel(xm-x, ym-r); /* III.2 Quadrant */ + setPixel(xm-r, ym+x); /* IV.1 Quadrant */ + setPixel(xm-x, ym+r); /* IV.2 Quadrant */ + } +} void plotLine(int x0, int y0, int x1, int y1,std::function setPixel) { int dx = abs(x1-x0), sx = x0x>-30000) { - lightSource cursor(lightCell(0.96f,0.84f,0.03f),11); - cursor.flicker=false; + //lightSource cursor(lightCell(9.6f,8.4f,0.3f),-1); + //cursor.flicker=false; int wx=df::global::cursor->x-window_x+vp.first.x; int wy=df::global::cursor->y-window_y+vp.first.y; int tile=getIndex(wx,wy); diff --git a/plugins/rendermax/renderer_light.hpp b/plugins/rendermax/renderer_light.hpp index 285caa5a2..668a729a5 100644 --- a/plugins/rendermax/renderer_light.hpp +++ b/plugins/rendermax/renderer_light.hpp @@ -88,10 +88,7 @@ struct lightSource { } - lightSource(lightCell power,int radius):power(power),radius(radius),flicker(false) - { - - } + lightSource(lightCell power,int radius); float powerSquared()const { return power.r*power.r+power.g*power.g+power.b*power.b; From 1d2accbe94302f7f9d75f970e08df85443391c66 Mon Sep 17 00:00:00 2001 From: Warmist Date: Tue, 25 Jun 2013 22:49:52 +0300 Subject: [PATCH 44/72] fixed (?) ice and made dragon blood glow a little. --- plugins/rendermax/renderer_light.cpp | 55 +++++++++++++++++++++++++--- plugins/rendermax/rendermax.lua | 2 + 2 files changed, 51 insertions(+), 6 deletions(-) diff --git a/plugins/rendermax/renderer_light.cpp b/plugins/rendermax/renderer_light.cpp index 9e03ca9aa..f1705cfd9 100644 --- a/plugins/rendermax/renderer_light.cpp +++ b/plugins/rendermax/renderer_light.cpp @@ -332,7 +332,7 @@ lightCell lightingEngineViewscreen::propogateSun(MapExtras::Block* b, int x,int const lightCell matStairCase(0.9f,0.9f,0.9f); lightCell ret=in; coord2d innerCoord(x,y); - df::tiletype type = b->tiletypeAt(innerCoord); + df::tiletype type = b->staticTiletypeAt(innerCoord); df::tile_designation d = b->DesignationAt(innerCoord); //df::tile_occupancy o = b->OccupancyAt(innerCoord); df::tiletype_shape shape = ENUM_ATTR(tiletype,shape,type); @@ -342,9 +342,18 @@ lightCell lightingEngineViewscreen::propogateSun(MapExtras::Block* b, int x,int matLightDef* lightDef; if(tileMat==df::tiletype_material::FROZEN_LIQUID) - lightDef=&matIce; - else - lightDef=getMaterial(mat.mat_type,mat.mat_index); + { + df::tiletype typeIce = b->tiletypeAt(innerCoord); + df::tiletype_shape shapeIce = ENUM_ATTR(tiletype,shape,typeIce); + df::tiletype_shape_basic basicShapeIce = ENUM_ATTR(tiletype_shape,basic_shape,shapeIce); + if(basicShapeIce==df::tiletype_shape_basic::Wall) + ret*=matIce.transparency; + else if(basicShapeIce==df::tiletype_shape_basic::Floor || basicShapeIce==df::tiletype_shape_basic::Ramp || shapeIce==df::tiletype_shape::STAIR_UP) + if(!lastLevel) + ret*=matIce.transparency.power(1.0f/7.0f); + } + + lightDef=getMaterial(mat.mat_type,mat.mat_index); if(!lightDef || !lightDef->isTransparent) lightDef=&matWall; @@ -354,6 +363,7 @@ lightCell lightingEngineViewscreen::propogateSun(MapExtras::Block* b, int x,int } else if(basic_shape==df::tiletype_shape_basic::Floor || basic_shape==df::tiletype_shape_basic::Ramp || shape==df::tiletype_shape::STAIR_UP) { + if(!lastLevel) ret*=lightDef->transparency.power(1.0f/7.0f); } @@ -495,9 +505,9 @@ void lightingEngineViewscreen::doOcupancyAndLights() df::tiletype_shape shape = ENUM_ATTR(tiletype,shape,type); df::tiletype_shape_basic basic_shape = ENUM_ATTR(tiletype_shape, basic_shape, shape); df::tiletype_material tileMat= ENUM_ATTR(tiletype,material,type); - + DFHack::t_matpair mat=b->staticMaterialAt(gpos); - + matLightDef* lightDef=getMaterial(mat.mat_type,mat.mat_index); if(!lightDef || !lightDef->isTransparent) lightDef=&matWall; @@ -532,6 +542,8 @@ void lightingEngineViewscreen::doOcupancyAndLights() } } } + + } df::map_block* block=b->getRaw(); @@ -579,6 +591,36 @@ void lightingEngineViewscreen::doOcupancyAndLights() applyMaterial(tile,419,cPlant->material); } } + //blood and other goo + for(int i=0;iblock_events.size();i++) + { + df::block_square_event* ev=block->block_events[i]; + df::block_square_event_type ev_type=ev->getType(); + if(ev_type==df::block_square_event_type::material_spatter) + { + df::block_square_event_material_spatterst* spatter=static_cast(ev); + matLightDef* m=getMaterial(spatter->mat_type,spatter->mat_index); + if(!m) + continue; + if(!m->isEmiting) + continue; + for(int x=0;x<16;x++) + for(int y=0;y<16;y++) + { + df::coord2d pos; + pos.x = blockX*16+x; + pos.y = blockY*16+y; + int16_t amount=spatter->amount[x][y]; + if(amount<=0) + continue; + pos=worldToViewportCoord(pos,vp,window2d); + if(isInViewport(pos,vp)) + { + addLight(getIndex(pos.x,pos.y),m->makeSource((float)amount/100)); + } + } + } + } } if(df::global::cursor->x>-30000) { @@ -632,6 +674,7 @@ void lightingEngineViewscreen::doOcupancyAndLights() } } } + } lightCell lua_parseLightCell(lua_State* L) { diff --git a/plugins/rendermax/rendermax.lua b/plugins/rendermax/rendermax.lua index 4b19e2485..4e335ec86 100644 --- a/plugins/rendermax/rendermax.lua +++ b/plugins/rendermax/rendermax.lua @@ -67,5 +67,7 @@ addMaterial("PLANT:CAVE MOSS",nil,{0.1,0.1,0.4},2) addMaterial("PLANT:MUSHROOM_HELMET_PLUMP",nil,{0.2,0.1,0.6},2) -- inorganics addMaterial("INORGANIC:ADAMANTINE",{0.1,0.3,0.3},{0.1,0.3,0.3},4) +-- creature stuff +addMaterial("CREATURE:DRAGON:BLOOD",nil,{0.6,0.1,0.1},4) -- TODO gems --buildings From fbbae3e9008b28da109dee97575bec902f574ce6 Mon Sep 17 00:00:00 2001 From: Warmist Date: Wed, 26 Jun 2013 01:18:26 +0300 Subject: [PATCH 45/72] Implemented building support. --- plugins/rendermax/renderer_light.cpp | 124 +++++++++++++++++++++++---- plugins/rendermax/renderer_light.hpp | 17 +++- plugins/rendermax/rendermax.lua | 61 ++++++++++++- 3 files changed, 181 insertions(+), 21 deletions(-) diff --git a/plugins/rendermax/renderer_light.cpp b/plugins/rendermax/renderer_light.cpp index f1705cfd9..1cdc1cf4b 100644 --- a/plugins/rendermax/renderer_light.cpp +++ b/plugins/rendermax/renderer_light.cpp @@ -299,6 +299,14 @@ matLightDef* lightingEngineViewscreen::getMaterial(int matType,int matIndex) else return NULL; } +buildingLightDef* lightingEngineViewscreen::getBuilding(df::building* bld) +{ + auto it=buildingDefs.find(std::make_tuple((int)bld->getType(),(int)bld->getSubtype(),(int)bld->getCustomType())); + if(it!=buildingDefs.end()) + return &it->second; + else + return NULL; +} void lightingEngineViewscreen::applyMaterial(int tileId,const matLightDef& mat,float size, float thickness) { if(mat.isTransparent) @@ -501,6 +509,11 @@ void lightingEngineViewscreen::doOcupancyAndLights() df::tiletype type = b->tiletypeAt(gpos); df::tile_designation d = b->DesignationAt(gpos); + if(d.bits.hidden) + { + curCell=lightCell(0,0,0); + continue; // do not process hidden stuff + } //df::tile_occupancy o = b->OccupancyAt(gpos); df::tiletype_shape shape = ENUM_ATTR(tiletype,shape,type); df::tiletype_shape_basic basic_shape = ENUM_ATTR(tiletype_shape, basic_shape, shape); @@ -511,7 +524,7 @@ void lightingEngineViewscreen::doOcupancyAndLights() matLightDef* lightDef=getMaterial(mat.mat_type,mat.mat_index); if(!lightDef || !lightDef->isTransparent) lightDef=&matWall; - if(shape==df::tiletype_shape::BROOK_BED || d.bits.hidden ) + if(shape==df::tiletype_shape::BROOK_BED ) { curCell=lightCell(0,0,0); } @@ -643,34 +656,58 @@ void lightingEngineViewscreen::doOcupancyAndLights() for(size_t i = 0; i < df::global::world->buildings.all.size(); i++) { df::building *bld = df::global::world->buildings.all[i]; + if(window_z!=bld->z) continue; + if(bld->getBuildStage()getMaxBuildStage()) //only work if fully built + continue; + df::coord2d p1(bld->x1,bld->y1); df::coord2d p2(bld->x2,bld->y2); p1=worldToViewportCoord(p1,vp,window2d); p2=worldToViewportCoord(p1,vp,window2d); if(isInViewport(p1,vp)||isInViewport(p2,vp)) { + int tile=getIndex(p1.x,p1.y); //TODO multitile buildings. How they would work? df::building_type type = bld->getType(); - - if (type == df::enums::building_type::WindowGlass || type==df::enums::building_type::WindowGem) - { - applyMaterial(tile,bld->mat_type,bld->mat_index); - } - if (type == df::enums::building_type::Table) + buildingLightDef* def=getBuilding(bld); + if(!def) + continue; + if(def->poweredOnly && bld->isUnpowered()) + continue; + if(type==df::enums::building_type::Door) { - addLight(tile,candle); + df::building_doorst* door=static_cast(bld); + if(!door->door_flags.bits.closed) + continue; } - if (type==df::enums::building_type::Statue) + + + if(def->useMaterial) { - addLight(tile,torch); + matLightDef* mat=getMaterial(bld->mat_type,bld->mat_index); + if(!mat)mat=&matWall; + if(def->light.isEmiting) + { + addLight(tile,def->light.makeSource()); + } + else if(mat->isEmiting) + { + addLight(tile,mat->makeSource()); + } + if(def->light.isTransparent) + { + ocupancy[tile]*=def->light.transparency; + } + else + { + ocupancy[tile]*=mat->transparency; + } } - if(type==df::enums::building_type::Door) + else { - df::building_doorst* door=static_cast(bld); - if(door->door_flags.bits.closed) - applyMaterial(tile,bld->mat_type,bld->mat_index,1,&matWall); + applyMaterial(tile,def->light); } } } @@ -698,6 +735,10 @@ lightCell lua_parseLightCell(lua_State* L) //Lua::GetOutput(L)->print("got cell(%f,%f,%f)\n",ret.r,ret.g,ret.b); return ret; } +#define GETLUAFLAG(field,name) lua_getfield(L,-1,"flags");\ + if(lua_isnil(L,-1)){field=false;}\ + else{lua_getfield(L,-1,#name);field=lua_isnil(L,-1);lua_pop(L,1);}\ + lua_pop(L,1) matLightDef lua_parseMatDef(lua_State* L) { @@ -726,7 +767,10 @@ matLightDef lua_parseMatDef(lua_State* L) } else lua_pop(L,1); - //todo flags + GETLUAFLAG(ret.flicker,"flicker"); + GETLUAFLAG(ret.useThickness,"useThickness"); + GETLUAFLAG(ret.sizeModifiesPower,"sizeModifiesPower"); + GETLUAFLAG(ret.sizeModifiesRange,"sizeModifiesRange"); return ret; } int lightingEngineViewscreen::parseMaterials(lua_State* L) @@ -783,6 +827,48 @@ int lightingEngineViewscreen::parseSpecial(lua_State* L) return 0; } #undef LOAD_SPECIAL +int lightingEngineViewscreen::parseBuildings(lua_State* L) +{ + auto engine= (lightingEngineViewscreen*)lua_touserdata(L, 1); + engine->buildingDefs.clear(); + Lua::StackUnwinder unwinder(L); + lua_getfield(L,2,"buildings"); + if(!lua_istable(L,-1)) + { + luaL_error(L,"Buildings table not found."); + return 0; + } + lua_pushnil(L); + while (lua_next(L, -2) != 0) { + int type=lua_tonumber(L,-2); + if(!lua_istable(L,-1)) + { + luaL_error(L,"Broken building definitions."); + } + //os->print("Processing type:%d\n",type); + lua_pushnil(L); + while (lua_next(L, -2) != 0) { + int subtype=lua_tonumber(L,-2); + //os->print("\tProcessing subtype:%d\n",index); + lua_pushnil(L); + while (lua_next(L, -2) != 0) { + int custom=lua_tonumber(L,-2); + //os->print("\tProcessing custom:%d\n",index); + buildingLightDef current; + current.light=lua_parseMatDef(L); + engine->buildingDefs[std::make_tuple(type,subtype,custom)]=current; + GETLUAFLAG(current.poweredOnly,"poweredOnly"); + GETLUAFLAG(current.useMaterial,"useMaterial"); + lua_pop(L, 1); + } + + lua_pop(L, 1); + } + lua_pop(L, 1); + } + lua_pop(L,1); + return 0; +} void lightingEngineViewscreen::defaultSettings() { matAmbience=matLightDef(lightCell(0.85f,0.85f,0.85f)); @@ -832,7 +918,12 @@ void lightingEngineViewscreen::loadSettings() lua_pushlightuserdata(s, this); lua_pushvalue(s,env); Lua::SafeCall(out,s,2,0); - + + lua_pushcfunction(s, parseBuildings); + lua_pushlightuserdata(s, this); + lua_pushvalue(s,env); + Lua::SafeCall(out,s,2,0); + out.print("%d buildings loaded\n",buildingDefs.size()); } } @@ -843,3 +934,4 @@ void lightingEngineViewscreen::loadSettings() } lua_pop(s,1); } +#undef GETLUAFLAG \ No newline at end of file diff --git a/plugins/rendermax/renderer_light.hpp b/plugins/rendermax/renderer_light.hpp index a80d314d4..176203cb1 100644 --- a/plugins/rendermax/renderer_light.hpp +++ b/plugins/rendermax/renderer_light.hpp @@ -3,6 +3,7 @@ #include "renderer_opengl.hpp" #include "Types.h" #include +#include #include "modules/MapCache.h" struct renderer_light : public renderer_wrap { @@ -102,11 +103,10 @@ struct lightSource }; struct matLightDef { - int mat_index; - int mat_type; bool isTransparent; lightCell transparency; bool isEmiting; + bool useThickness; bool sizeModifiesPower; bool sizeModifiesRange; bool flicker; @@ -123,6 +123,12 @@ struct matLightDef return lightSource(emitColor,radius); } }; +struct buildingLightDef +{ + matLightDef light; + bool poweredOnly; + bool useMaterial; +}; class lightingEngineViewscreen:public lightingEngine { public: @@ -149,10 +155,13 @@ private: bool addLight(int tileId,const lightSource& light); matLightDef* getMaterial(int matType,int matIndex); + buildingLightDef* getBuilding(df::building* bld); + //apply material to cell void applyMaterial(int tileId,const matLightDef& mat,float size=1, float thickness = 1); //try to find and apply material, if failed return false, and if def!=null then apply def. bool applyMaterial(int tileId,int matType,int matIndex,float size=1,const matLightDef* def=NULL); + size_t inline getIndex(int x,int y) { return x*h+y; @@ -168,6 +177,7 @@ private: static int parseMaterials(lua_State* L); static int parseSpecial(lua_State* L); + static int parseBuildings(lua_State* L); //special stuff matLightDef matLava; matLightDef matIce; @@ -179,7 +189,8 @@ private: float levelDim; //materials std::map,matLightDef> matDefs; - + //buildings + std::map,buildingLightDef> buildingDefs; int w,h; DFHack::rect2d mapPort; }; diff --git a/plugins/rendermax/rendermax.lua b/plugins/rendermax/rendermax.lua index 4e335ec86..785cb8b1d 100644 --- a/plugins/rendermax/rendermax.lua +++ b/plugins/rendermax/rendermax.lua @@ -8,8 +8,9 @@ for k,v in pairs(ret) do _ENV[k]=v end -- add material by id (index,mat pair or token string or a type number), flags is a table of strings --- supported flags: +-- supported flags (but not implemented): -- flicker +-- useThickness -- use thickness of stuff in transparency calculation -- sizeModifiesPower -- sizeModifiesRange function addMaterial(id,transparency,emitance,radius,flags) @@ -27,8 +28,58 @@ function addMaterial(id,transparency,emitance,radius,flags) materials[matinfo.type]=materials[matinfo.type] or {} materials[matinfo.type][matinfo.index]=makeMaterialDef(transparency,emitance,radius,flags) end +function buildingLookUp(id) + local tokens={} + local lookup={ Workshop=df.workshop_type,Furnace=df.furnace_type,Trap=df.trap_type, + SiegeEngine=siegeengine_type} + for i in string.gmatch(id, "[^:]+") do + table.insert(tokens,i) + end + local ret={} + ret.type=df.building_type[tokens[1]] + if tokens[2] then + local type_array=lookup[tokens[1]] + if type_array then + ret.subtype=type_array[tokens[2]] + end + if tokens[2]=="Custom" and tokens[3] then --TODO cache for faster lookup + if ret.type==df.building_type.Workshop then + for k,v in pairs(df.global.world.raws.buildings.workshops) do + if v.code==tokens[3] then + ret.custom=v.id + break + end + end + elseif ret.type==df.building_type.Furnace then + for k,v in pairs(df.global.world.raws.buildings.furnaces) do + if v.code==tokens[3] then + ret.custom=v.id + break + end + end + end + end + end + return ret +end +-- add building by id (string e.g. "Statue" or "Workshop:Masons", flags is a table of strings +-- supported flags: +-- useMaterial --uses material, but the defined things overwrite +-- poweredOnly --glow only when powered function addBuilding(id,transparency,emitance,radius,flags) - --stuff + local bld=buildingLookUp(id) + local mat=makeMaterialDef(transparency,emitance,radius,flags) + buildings[bld.type]=buildings[bld.type] or {} + if bld.subtype then + if bld.custom then + buildings[bld.type][bld.subtype]=buildings[bld.type][bld.subtype] or {} + buildings[bld.type][bld.subtype][bld.custom]=mat + else + buildings[bld.type][bld.subtype]={[-1]=mat} + end + else + buildings[bld.type][-1]={[-1]=mat} + end end function makeMaterialDef(transparency,emitance,radius,flags) local flg @@ -43,6 +94,7 @@ end ------------------------------------------------------------------------ ---------------- Configuration Starts Here ------------------------- ------------------------------------------------------------------------ +is_computer_quantum=false -- will enable more costly parts in the future --special things special.LAVA=makeMaterialDef({0.8,0.2,0.2},{0.8,0.2,0.2},5) special.WATER=makeMaterialDef({0.5,0.5,0.8}) @@ -71,3 +123,8 @@ addMaterial("INORGANIC:ADAMANTINE",{0.1,0.3,0.3},{0.1,0.3,0.3},4) addMaterial("CREATURE:DRAGON:BLOOD",nil,{0.6,0.1,0.1},4) -- TODO gems --buildings +addBuilding("Statue",{1,1,1},{0.9,0.75,0.3},8) +addBuilding("Bed",{1,1,1},{0.3,0.2,0.0},2) +addBuilding("WindowGlass",nil,nil,0,{"useMaterial"}) +addBuilding("WindowGem",nil,nil,0,{"useMaterial"}) +addBuilding("Door",nil,nil,0,{"useMaterial"}) -- special case, only closed door obstruct/emit light \ No newline at end of file From 689caa5039c4d616fa8421bb47d2e0ebd215683d Mon Sep 17 00:00:00 2001 From: Japa Date: Wed, 26 Jun 2013 19:12:14 +0530 Subject: [PATCH 46/72] Made the lighting engine multithreaded. --- plugins/rendermax/CMakeLists.txt | 2 + plugins/rendermax/renderer_light.cpp | 184 +++++++++++++++++++++------ plugins/rendermax/renderer_light.hpp | 24 +++- 3 files changed, 166 insertions(+), 44 deletions(-) diff --git a/plugins/rendermax/CMakeLists.txt b/plugins/rendermax/CMakeLists.txt index 5fcf4d6a9..1e6883509 100644 --- a/plugins/rendermax/CMakeLists.txt +++ b/plugins/rendermax/CMakeLists.txt @@ -22,6 +22,7 @@ IF(UNIX) SET(PROJECT_LIBS # add any extra linux libs here lua + dfhack-tinythread ${PROJECT_LIBS} ) # windows @@ -29,6 +30,7 @@ ELSE(UNIX) SET(PROJECT_LIBS # add any extra windows libs here lua + dfhack-tinythread ${PROJECT_LIBS} $(NOINHERIT) ) diff --git a/plugins/rendermax/renderer_light.cpp b/plugins/rendermax/renderer_light.cpp index 980d1250c..e3d06e6bf 100644 --- a/plugins/rendermax/renderer_light.cpp +++ b/plugins/rendermax/renderer_light.cpp @@ -4,6 +4,7 @@ #include #include +#include "tinythread.h" #include "LuaTools.h" @@ -23,13 +24,103 @@ #include "df/plant.h" #include "df/plant_raw.h" +#include + using df::global::gps; using namespace DFHack; using df::coord2d; - +using namespace tthread; const float RootTwo = 1.4142135623730950488016887242097f; + +void lightingEngineViewscreen::lightWorkerThread(void * arg) +{ + int thisIndex; + std::vector canvas; + while(1) + { + writeMutex.lock(); + writeMutex.unlock(); //Don't start till write access is given. + indexMutex.lock(); + if(nextIndex == -1) //The worker threads should keep going until, and including, index 0. + { + indexMutex.unlock(); + break; + } + else if(nextIndex == -2) + { + indexMutex.unlock(); + return; + } + else + { + thisIndex = nextIndex; + nextIndex--; + indexMutex.unlock(); + if(canvas.size() != lightMap.size()) + { + canvas.resize(lightMap.size(), lightCell(0,0,0)); + } + doLight(canvas, thisIndex); + + } + } + writeMutex.lock(); + for(int i = 0; i < canvas.size(); i++) + { + lightMap[i] = blend(lightMap[i], canvas[i]); + + } + writeMutex.unlock(); + canvas.assign(canvas.size(),lightCell(0,0,0)); +} + +lightingEngineViewscreen::~lightingEngineViewscreen() +{ + indexMutex.lock(); + nextIndex = -2; + indexMutex.unlock(); + writeMutex.unlock(); + for(int i = 0; i < threadList.size(); i++) + { + if(threadList[i]) + threadList[i]->join(); + } +} + +void threadStub(void * arg) +{ + if(arg) + ((lightingEngineViewscreen*)arg)->lightWorkerThread(0); +} + +void lightingEngineViewscreen::doLightThreads() +{ + nextIndex = 0; + int num_threads = thread::hardware_concurrency(); + if(num_threads < 1) num_threads = 1; + if(threadList.empty()) + { + threadList.resize(num_threads, NULL); + } + for(int i = 0; i < num_threads; i++) + { + threadList[i] = new thread(threadStub, this); + } + nextIndex = lightMap.size() - 1; //start at the largest valid index + writeMutex.unlock(); + for(int i = 0; i < num_threads; i++) + { + threadList[i]->join(); + delete threadList[i]; + threadList[i]=0; + } + writeMutex.lock(); +} + + + lightSource::lightSource(lightCell power,int radius):power(power),flicker(false) { if(radius >= 0) @@ -90,6 +181,7 @@ lightingEngineViewscreen::lightingEngineViewscreen(renderer_light* target):light reinit(); defaultSettings(); loadSettings(); + writeMutex.lock(); //This is needed for later when the threads will all want to write to the buffer. } void lightingEngineViewscreen::reinit() @@ -148,11 +240,15 @@ void plotLine(int x0, int y0, int x1, int y1,std::function & target, lightCell& power,int dx,int dy,int tx,int ty) { if(isInViewport(coord2d(tx,ty),mapPort)) { @@ -183,9 +279,9 @@ bool lightingEngineViewscreen::lightUpCell(lightCell& power,int dx,int dy,int tx return false; } //float dt=sqrt(dsq); - lightCell oldCol=lightMap[tile]; - lightCell ncol=blend(power,oldCol); - lightMap[tile]=ncol; + lightCell oldCol=target[tile]; + lightCell ncol=blendMax(power,oldCol); + target[tile]=ncol; if(wallhack) return false; @@ -195,50 +291,56 @@ bool lightingEngineViewscreen::lightUpCell(lightCell& power,int dx,int dy,int tx else return false; } -void lightingEngineViewscreen::doRay(lightCell power,int cx,int cy,int tx,int ty) +void lightingEngineViewscreen::doRay(std::vector & target, lightCell power,int cx,int cy,int tx,int ty) { using namespace std::placeholders; lightCell curPower=power; - plotLine(cx,cy,tx,ty,std::bind(&lightingEngineViewscreen::lightUpCell,this,std::ref(curPower),_1,_2,_3,_4)); + plotLine(cx,cy,tx,ty,std::bind(&lightingEngineViewscreen::lightUpCell,this,std::ref(target),std::ref(curPower),_1,_2,_3,_4)); } -void lightingEngineViewscreen::doFovs() + +void lightingEngineViewscreen::doLight(std::vector & target, int index) { - mapPort=getMapViewport(); using namespace std::placeholders; - - for(int i=mapPort.first.x;i0) + { + coord2d coord = getCoords(index); + int i = coord.x; + int j = coord.y; + lightCell power=csource.power; + int radius =csource.radius; + if(csource.flicker) { - lightSource& csource=lights[getIndex(i,j)]; - if(csource.radius>0) - { - lightCell power=csource.power; - int radius =csource.radius; - if(csource.flicker) - { - float flicker=(rand()/(float)RAND_MAX)/2.0f+0.5f; - radius*=flicker; - power=power*flicker; - } - int surrounds = 0; - lightCell curPower; + float flicker=(rand()/(float)RAND_MAX)/2.0f+0.5f; + radius*=flicker; + power=power*flicker; + } + int surrounds = 0; + lightCell curPower; - lightUpCell(curPower = power, 0, 0,i+0, j+0); - { - surrounds += lightUpCell(curPower = power, 0, 1,i+0, j+1); - surrounds += lightUpCell(curPower = power, 1, 1,i+1, j+1); - surrounds += lightUpCell(curPower = power, 1, 0,i+1, j+0); - surrounds += lightUpCell(curPower = power, 1,-1,i+1, j-1); - surrounds += lightUpCell(curPower = power, 0,-1,i+0, j-1); - surrounds += lightUpCell(curPower = power,-1,-1,i-1, j-1); - surrounds += lightUpCell(curPower = power,-1, 0,i-1, j+0); - surrounds += lightUpCell(curPower = power,-1, 1,i-1, j+1); - } - if(surrounds) - plotSquare(i,j,radius, - std::bind(&lightingEngineViewscreen::doRay,this,power,i,j,_1,_2)); - } + lightUpCell(target, curPower = power, 0, 0,i+0, j+0); + { + surrounds += lightUpCell(target, curPower = power, 0, 1,i+0, j+1); + surrounds += lightUpCell(target, curPower = power, 1, 1,i+1, j+1); + surrounds += lightUpCell(target, curPower = power, 1, 0,i+1, j+0); + surrounds += lightUpCell(target, curPower = power, 1,-1,i+1, j-1); + surrounds += lightUpCell(target, curPower = power, 0,-1,i+0, j-1); + surrounds += lightUpCell(target, curPower = power,-1,-1,i-1, j-1); + surrounds += lightUpCell(target, curPower = power,-1, 0,i-1, j+0); + surrounds += lightUpCell(target, curPower = power,-1, 1,i-1, j+1); } + if(surrounds) + { + plotSquare(i,j,radius, + std::bind(&lightingEngineViewscreen::doRay,this,std::ref(target),power,i,j,_1,_2)); + } + } +} + +void lightingEngineViewscreen::doFovs() +{ + mapPort=getMapViewport(); + doLightThreads(); } void lightingEngineViewscreen::clear() { diff --git a/plugins/rendermax/renderer_light.hpp b/plugins/rendermax/renderer_light.hpp index e3122a8ca..290863aee 100644 --- a/plugins/rendermax/renderer_light.hpp +++ b/plugins/rendermax/renderer_light.hpp @@ -124,7 +124,7 @@ class lightingEngineViewscreen:public lightingEngine { public: lightingEngineViewscreen(renderer_light* target); - + ~lightingEngineViewscreen(); void reinit(); void calculate(); @@ -140,9 +140,10 @@ private: void doSun(const lightSource& sky,MapExtras::MapCache& map); void doOcupancyAndLights(); lightCell propogateSun(MapExtras::Block* b, int x,int y,const lightCell& in,bool lastLevel); - void doRay(lightCell power,int cx,int cy,int tx,int ty); + void doRay(std::vector & target, lightCell power,int cx,int cy,int tx,int ty); void doFovs(); - bool lightUpCell(lightCell& power,int dx,int dy,int tx,int ty); + void doLight(std::vector & target, int index); + bool lightUpCell(std::vector & target, lightCell& power,int dx,int dy,int tx,int ty); bool addLight(int tileId,const lightSource& light); matLightDef* getMaterial(int matType,int matIndex); @@ -154,10 +155,25 @@ private: { return x*h+y; } + df::coord2d inline getCoords(int index) + { + return df::coord2d(index/h, index%h); + } //maps std::vector lightMap; + std::vector lightMap2; std::vector ocupancy; std::vector lights; + + //Threading stuff + tthread::mutex indexMutex; + tthread::mutex writeMutex; + int nextIndex; + std::vector threadList; + void doLightThreads(); +public: + void lightWorkerThread(void * arg); +private: //settings ///set up sane settings if setting file does not exist. @@ -180,4 +196,6 @@ private: int w,h; DFHack::rect2d mapPort; }; +lightCell blend(lightCell a,lightCell b); +lightCell blendMax(lightCell a,lightCell b); #endif From d90a7bfb88db8913588f8a21460b099a55b29e5b Mon Sep 17 00:00:00 2001 From: Japa Date: Wed, 26 Jun 2013 19:26:11 +0530 Subject: [PATCH 47/72] removed something I had for testing. --- plugins/rendermax/renderer_light.hpp | 1 - 1 file changed, 1 deletion(-) diff --git a/plugins/rendermax/renderer_light.hpp b/plugins/rendermax/renderer_light.hpp index 556d53a68..00ebc43ce 100644 --- a/plugins/rendermax/renderer_light.hpp +++ b/plugins/rendermax/renderer_light.hpp @@ -170,7 +170,6 @@ private: } //maps std::vector lightMap; - std::vector lightMap2; std::vector ocupancy; std::vector lights; From b7f28877a29916b0803864630c3d779e3165aec3 Mon Sep 17 00:00:00 2001 From: Warmist Date: Wed, 26 Jun 2013 20:19:30 +0300 Subject: [PATCH 48/72] Added building size. Removed material flags (on by default) --- plugins/rendermax/renderer_light.cpp | 50 +++++++++++++++++----------- plugins/rendermax/renderer_light.hpp | 13 +++++--- plugins/rendermax/rendermax.lua | 9 ++--- 3 files changed, 44 insertions(+), 28 deletions(-) diff --git a/plugins/rendermax/renderer_light.cpp b/plugins/rendermax/renderer_light.cpp index 2b966ae1f..ab3910fd7 100644 --- a/plugins/rendermax/renderer_light.cpp +++ b/plugins/rendermax/renderer_light.cpp @@ -400,6 +400,13 @@ bool lightingEngineViewscreen::addLight(int tileId,const lightSource& light) lights[tileId].flicker=true; return wasLight; } +void lightingEngineViewscreen::addOclusion(int tileId,const lightCell& c,float thickness) +{ + if(thickness > 0.999 && thickness < 1.001) + ocupancy[tileId]*=c; + else + ocupancy[tileId]*=(c.power(thickness)); +} lightCell getStandartColor(int colorId) { return lightCell(df::global::enabler->ccolor[colorId][0]/255.0f, @@ -444,32 +451,30 @@ void lightingEngineViewscreen::applyMaterial(int tileId,const matLightDef& mat,f { if(mat.isTransparent) { - if(thickness > 0.999 && thickness < 1.001) - ocupancy[tileId]*=mat.transparency; - else - ocupancy[tileId]*=(mat.transparency.power(thickness)); + addOclusion(tileId,mat.transparency,thickness); } else ocupancy[tileId]=lightCell(0,0,0); if(mat.isEmiting) addLight(tileId,mat.makeSource(size)); } -bool lightingEngineViewscreen::applyMaterial(int tileId,int matType,int matIndex,float size,const matLightDef* def) +bool lightingEngineViewscreen::applyMaterial(int tileId,int matType,int matIndex,float size,float thickness,const matLightDef* def) { matLightDef* m=getMaterial(matType,matIndex); if(m) { - applyMaterial(tileId,*m,size); + applyMaterial(tileId,*m,size,thickness); return true; } else if(def) { - applyMaterial(tileId,*def,size); + applyMaterial(tileId,*def,size,thickness); } return false; } lightCell lightingEngineViewscreen::propogateSun(MapExtras::Block* b, int x,int y,const lightCell& in,bool lastLevel) { + //TODO unify under addLight/addOclusion const lightCell matStairCase(0.9f,0.9f,0.9f); lightCell ret=in; coord2d innerCoord(x,y); @@ -645,7 +650,7 @@ void lightingEngineViewscreen::doOcupancyAndLights() if(d.bits.hidden) { curCell=lightCell(0,0,0); - continue; // do not process hidden stuff + continue; // do not process hidden stuff, TODO other hidden stuff } //df::tile_occupancy o = b->OccupancyAt(gpos); df::tiletype_shape shape = ENUM_ATTR(tiletype,shape,type); @@ -670,11 +675,11 @@ void lightingEngineViewscreen::doOcupancyAndLights() } else if(!d.bits.liquid_type && d.bits.flow_size>0 ) { - applyMaterial(tile,matWater, 1, (float)d.bits.flow_size/7.0f); + applyMaterial(tile,matWater, (float)d.bits.flow_size/7.0f, (float)d.bits.flow_size/7.0f); } if(d.bits.liquid_type && d.bits.flow_size>0) { - applyMaterial(tile,matLava); + applyMaterial(tile,matLava,(float)d.bits.flow_size/7.0f,(float)d.bits.flow_size/7.0f); } else if(shape==df::tiletype_shape::EMPTY || shape==df::tiletype_shape::RAMP_TOP || shape==df::tiletype_shape::STAIR_DOWN || shape==df::tiletype_shape::STAIR_UPDOWN) @@ -728,7 +733,8 @@ void lightingEngineViewscreen::doOcupancyAndLights() for(int i=0;iplants.size();i++) { df::plant* cPlant=block->plants[i]; - + if (cPlant->grow_counter <180000) //todo maybe smaller light/oclusion? + continue; df::coord2d pos=cPlant->pos; pos=worldToViewportCoord(pos,vp,window2d); int tile=getIndex(pos.x,pos.y); @@ -823,24 +829,24 @@ void lightingEngineViewscreen::doOcupancyAndLights() if(!mat)mat=&matWall; if(def->light.isEmiting) { - addLight(tile,def->light.makeSource()); + addLight(tile,def->light.makeSource(def->size)); } else if(mat->isEmiting) { - addLight(tile,mat->makeSource()); + addLight(tile,mat->makeSource(def->size)); } if(def->light.isTransparent) { - ocupancy[tile]*=def->light.transparency; + addOclusion(tile,def->light.transparency,def->size); } else { - ocupancy[tile]*=mat->transparency; + addOclusion(tile,mat->transparency,def->size); } } else { - applyMaterial(tile,def->light); + applyMaterial(tile,def->light,def->size,def->thickness); } } } @@ -901,9 +907,6 @@ matLightDef lua_parseMatDef(lua_State* L) else lua_pop(L,1); GETLUAFLAG(ret.flicker,"flicker"); - GETLUAFLAG(ret.useThickness,"useThickness"); - GETLUAFLAG(ret.sizeModifiesPower,"sizeModifiesPower"); - GETLUAFLAG(ret.sizeModifiesRange,"sizeModifiesRange"); return ret; } int lightingEngineViewscreen::parseMaterials(lua_State* L) @@ -992,6 +995,15 @@ int lightingEngineViewscreen::parseBuildings(lua_State* L) engine->buildingDefs[std::make_tuple(type,subtype,custom)]=current; GETLUAFLAG(current.poweredOnly,"poweredOnly"); GETLUAFLAG(current.useMaterial,"useMaterial"); + + lua_getfield(L,-1,"size"); + current.size=luaL_optnumber(L,-1,1); + lua_pop(L,1); + + lua_getfield(L,-1,"thickness"); + current.thickness=luaL_optnumber(L,-1,1); + lua_pop(L,1); + lua_pop(L, 1); } diff --git a/plugins/rendermax/renderer_light.hpp b/plugins/rendermax/renderer_light.hpp index 00ebc43ce..2e8b03c54 100644 --- a/plugins/rendermax/renderer_light.hpp +++ b/plugins/rendermax/renderer_light.hpp @@ -103,9 +103,6 @@ struct matLightDef bool isTransparent; lightCell transparency; bool isEmiting; - bool useThickness; - bool sizeModifiesPower; - bool sizeModifiesRange; bool flicker; lightCell emitColor; int radius; @@ -117,7 +114,10 @@ struct matLightDef lightSource makeSource(float size=1) const { //TODO implement sizeModifiesPower/range - return lightSource(emitColor,radius); + if(size>0.999 && size<1.001) + return lightSource(emitColor,radius); + else + return lightSource(emitColor*size,radius*size);//todo check if this is sane } }; struct buildingLightDef @@ -125,6 +125,8 @@ struct buildingLightDef matLightDef light; bool poweredOnly; bool useMaterial; + float thickness; + float size; }; class lightingEngineViewscreen:public lightingEngine { @@ -151,6 +153,7 @@ private: void doLight(std::vector & target, int index); bool lightUpCell(std::vector & target, lightCell& power,int dx,int dy,int tx,int ty); bool addLight(int tileId,const lightSource& light); + void addOclusion(int tileId,const lightCell& c,float thickness); matLightDef* getMaterial(int matType,int matIndex); buildingLightDef* getBuilding(df::building* bld); @@ -158,7 +161,7 @@ private: //apply material to cell void applyMaterial(int tileId,const matLightDef& mat,float size=1, float thickness = 1); //try to find and apply material, if failed return false, and if def!=null then apply def. - bool applyMaterial(int tileId,int matType,int matIndex,float size=1,const matLightDef* def=NULL); + bool applyMaterial(int tileId,int matType,int matIndex,float size=1,float thickness = 1,const matLightDef* def=NULL); size_t inline getIndex(int x,int y) { diff --git a/plugins/rendermax/rendermax.lua b/plugins/rendermax/rendermax.lua index 785cb8b1d..ed790be48 100644 --- a/plugins/rendermax/rendermax.lua +++ b/plugins/rendermax/rendermax.lua @@ -10,9 +10,6 @@ end -- add material by id (index,mat pair or token string or a type number), flags is a table of strings -- supported flags (but not implemented): -- flicker --- useThickness -- use thickness of stuff in transparency calculation --- sizeModifiesPower --- sizeModifiesRange function addMaterial(id,transparency,emitance,radius,flags) local matinfo if type(id)=="string" then @@ -66,9 +63,13 @@ end -- supported flags: -- useMaterial --uses material, but the defined things overwrite -- poweredOnly --glow only when powered -function addBuilding(id,transparency,emitance,radius,flags) +function addBuilding(id,transparency,emitance,radius,flags,size,thickness) + size=size or 1 + thickness=thickness or 1 local bld=buildingLookUp(id) local mat=makeMaterialDef(transparency,emitance,radius,flags) + mat.size=size + mat.thickness=thickness buildings[bld.type]=buildings[bld.type] or {} if bld.subtype then if bld.custom then From e1daa16d9e7063e922c8f2c14f0f83efe5de293d Mon Sep 17 00:00:00 2001 From: Warmist Date: Wed, 26 Jun 2013 22:05:22 +0300 Subject: [PATCH 49/72] Added sun time manipulation, updated helpstring. --- plugins/rendermax/renderer_light.cpp | 19 +++++++++++++++---- plugins/rendermax/renderer_light.hpp | 5 ++++- plugins/rendermax/rendermax.cpp | 21 ++++++++++++++++++++- plugins/rendermax/rendermax.lua | 2 +- 4 files changed, 40 insertions(+), 7 deletions(-) diff --git a/plugins/rendermax/renderer_light.cpp b/plugins/rendermax/renderer_light.cpp index ab3910fd7..12cffb958 100644 --- a/plugins/rendermax/renderer_light.cpp +++ b/plugins/rendermax/renderer_light.cpp @@ -598,7 +598,12 @@ void lightingEngineViewscreen::doSun(const lightSource& sky,MapExtras::MapCache& void lightingEngineViewscreen::doOcupancyAndLights() { // TODO better curve (+red dawn ?) - float daycol = 1;//abs((*df::global::cur_year_tick % 1200) - 600.0) / 400.0; + float daycol; + if(dayHour<0) + daycol= abs((*df::global::cur_year_tick % 1200) - 600.0) / 600.0; + else + daycol= abs(fmod(dayHour+12.0f,24.0f)-12.0f)/12.0f; //1->12h 0->24h + lightCell sky_col(daycol, daycol, daycol); lightSource sky(sky_col, 15); @@ -878,6 +883,10 @@ lightCell lua_parseLightCell(lua_State* L) if(lua_isnil(L,-1)){field=false;}\ else{lua_getfield(L,-1,#name);field=lua_isnil(L,-1);lua_pop(L,1);}\ lua_pop(L,1) + +#define GETLUANUMBER(field,name) lua_getfield(L,-1,#name);\ + if(!lua_isnil(L,-1) && lua_isnumber(L,-1))field=lua_tonumber(L,-1);\ + lua_pop(L,1) matLightDef lua_parseMatDef(lua_State* L) { @@ -957,9 +966,9 @@ int lightingEngineViewscreen::parseSpecial(lua_State* L) LOAD_SPECIAL(AMBIENT,matAmbience); LOAD_SPECIAL(CURSOR,matCursor); LOAD_SPECIAL(CITIZEN,matCitizen); - lua_getfield(L,-1,"LevelDim"); - if(!lua_isnil(L,-1) && lua_isnumber(L,-1))engine->levelDim=lua_tonumber(L,-1); - lua_pop(L,1); + GETLUANUMBER(engine->levelDim,levelDim); + GETLUANUMBER(engine->dayHour,dayHour); + return 0; } #undef LOAD_SPECIAL @@ -1025,6 +1034,7 @@ void lightingEngineViewscreen::defaultSettings() matWall=matLightDef(lightCell(0,0,0)); matCitizen=matLightDef(lightCell(0.8f,0.8f,0.9f),6); levelDim=0.2f; + dayHour=-1; } void lightingEngineViewscreen::loadSettings() { @@ -1080,3 +1090,4 @@ void lightingEngineViewscreen::loadSettings() lua_pop(s,1); } #undef GETLUAFLAG +#undef GETLUANUMBER \ No newline at end of file diff --git a/plugins/rendermax/renderer_light.hpp b/plugins/rendermax/renderer_light.hpp index 2e8b03c54..465d46ce0 100644 --- a/plugins/rendermax/renderer_light.hpp +++ b/plugins/rendermax/renderer_light.hpp @@ -78,6 +78,7 @@ public: virtual void loadSettings()=0; virtual void clear()=0; + virtual void setHour(float h)=0; protected: renderer_light* myRenderer; }; @@ -182,11 +183,13 @@ private: int nextIndex; std::vector threadList; void doLightThreads(); + //misc + void setHour(float h){dayHour=h;}; public: void lightWorkerThread(void * arg); private: //settings - + float dayHour; //<0 to cycle ///set up sane settings if setting file does not exist. void defaultSettings(); diff --git a/plugins/rendermax/rendermax.cpp b/plugins/rendermax/rendermax.cpp index 482dfa6cb..6a1b40890 100644 --- a/plugins/rendermax/rendermax.cpp +++ b/plugins/rendermax/rendermax.cpp @@ -20,6 +20,8 @@ #include "df/viewscreen_dwarfmodest.h" #include "df/viewscreen_dungeonmodest.h" +#include + using df::viewscreen_dungeonmodest; using df::viewscreen_dwarfmodest; @@ -45,7 +47,9 @@ DFhackCExport command_result plugin_init (color_ostream &out, std::vector |cycle - set time to x or cycle (same effect if x<0)\n" " rendermax disable\n" )); return CR_OK; @@ -366,6 +370,21 @@ static command_result rendermax(color_ostream &out, vector & parameters CoreSuspender suspend; engine->loadSettings(); } + else if(parameters[1]=="sun" && parameters.size()==3) + { + if(parameters[2]=="cycle") + { + engine->setHour(-1); + } + else + { + std::stringstream ss; + ss<>h; + engine->setHour(h); + } + } } else out.printerr("Light mode already enabled"); diff --git a/plugins/rendermax/rendermax.lua b/plugins/rendermax/rendermax.lua index ed790be48..4140a8068 100644 --- a/plugins/rendermax/rendermax.lua +++ b/plugins/rendermax/rendermax.lua @@ -104,8 +104,8 @@ special.AMBIENT=makeMaterialDef({0.85,0.85,0.85}) --ambient fog special.CURSOR=makeMaterialDef({1,1,1},{0.96,0.84,0.03},11, {"flicker"}) special.CITIZEN=makeMaterialDef(nil,{0.80,0.80,0.90},6) special.LevelDim=0.2 -- darkness. Do not set to 0 +special.dayHour=-1 -- <0 cycle, else hour of the day --TODO dragonfire ---TODO daylight --materials From 7c9f0fd7810b5c2e356425f64dc48b71d947ce7d Mon Sep 17 00:00:00 2001 From: Warmist Date: Thu, 27 Jun 2013 00:14:03 +0300 Subject: [PATCH 50/72] Added day colors and day speed parameters. --- plugins/rendermax/renderer_light.cpp | 49 +++++++++++++++++++++++---- plugins/rendermax/renderer_light.hpp | 3 ++ plugins/rendermax/renderer_opengl.hpp | 4 +-- plugins/rendermax/rendermax.lua | 6 ++++ 4 files changed, 54 insertions(+), 8 deletions(-) diff --git a/plugins/rendermax/renderer_light.cpp b/plugins/rendermax/renderer_light.cpp index 12cffb958..88ba41b71 100644 --- a/plugins/rendermax/renderer_light.cpp +++ b/plugins/rendermax/renderer_light.cpp @@ -275,7 +275,7 @@ bool lightingEngineViewscreen::lightUpCell(std::vector & target, ligh } if(ls.radius>0 && dsq>0) { - if(power12h 0->24h + daycol= fmod(dayHour,24.0f)/24.0f; //1->12h 0->24h - lightCell sky_col(daycol, daycol, daycol); - lightSource sky(sky_col, 15); + lightCell sky_col=getSkyColor(daycol); + lightSource sky(sky_col, 15);//auto calculate best size lightSource candle(lightCell(0.96f,0.84f,0.03f),5); lightSource torch(lightCell(0.9f,0.75f,0.3f),8); @@ -968,7 +989,18 @@ int lightingEngineViewscreen::parseSpecial(lua_State* L) LOAD_SPECIAL(CITIZEN,matCitizen); GETLUANUMBER(engine->levelDim,levelDim); GETLUANUMBER(engine->dayHour,dayHour); - + GETLUANUMBER(engine->daySpeed,daySpeed); + lua_getfield(L,-1,"dayColors"); + if(lua_istable(L,-1)) + { + engine->dayColors.clear(); + lua_pushnil(L); + while (lua_next(L, -2) != 0) { + engine->dayColors.push_back(lua_parseLightCell(L)); + lua_pop(L,1); + } + lua_pop(L,1); + } return 0; } #undef LOAD_SPECIAL @@ -1035,6 +1067,10 @@ void lightingEngineViewscreen::defaultSettings() matCitizen=matLightDef(lightCell(0.8f,0.8f,0.9f),6); levelDim=0.2f; dayHour=-1; + daySpeed=1; + dayColors.push_back(lightCell(0,0,0)); + dayColors.push_back(lightCell(1,1,1)); + dayColors.push_back(lightCell(0,0,0)); } void lightingEngineViewscreen::loadSettings() { @@ -1073,6 +1109,7 @@ void lightingEngineViewscreen::loadSettings() lua_pushlightuserdata(s, this); lua_pushvalue(s,env); Lua::SafeCall(out,s,2,0); + out.print("%d day light colors loaded\n",dayColors.size()); lua_pushcfunction(s, parseBuildings); lua_pushlightuserdata(s, this); diff --git a/plugins/rendermax/renderer_light.hpp b/plugins/rendermax/renderer_light.hpp index 465d46ce0..e5a9db787 100644 --- a/plugins/rendermax/renderer_light.hpp +++ b/plugins/rendermax/renderer_light.hpp @@ -188,8 +188,11 @@ private: public: void lightWorkerThread(void * arg); private: + lightCell getSkyColor(float v); //settings + float daySpeed; float dayHour; //<0 to cycle + std::vector dayColors; // a gradient of colors, first to 0, last to 24 ///set up sane settings if setting file does not exist. void defaultSettings(); diff --git a/plugins/rendermax/renderer_opengl.hpp b/plugins/rendermax/renderer_opengl.hpp index 57e81295b..8ba35f5ea 100644 --- a/plugins/rendermax/renderer_opengl.hpp +++ b/plugins/rendermax/renderer_opengl.hpp @@ -223,9 +223,9 @@ struct lightCell { return lightCell(r+other.r,g+other.g,b+other.b); } - bool operator<(const lightCell& other) const + bool operator<=(const lightCell& other) const { - return r1200 cur_year_ticks per day. 2->600 ticks --TODO dragonfire --materials From 67859ada0abfa2a5e60ef15612bec74f77e6fc85 Mon Sep 17 00:00:00 2001 From: Japa Date: Thu, 27 Jun 2013 02:49:18 +0530 Subject: [PATCH 51/72] Changed sun calculation direction. --- plugins/rendermax/renderer_light.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/rendermax/renderer_light.cpp b/plugins/rendermax/renderer_light.cpp index ab3910fd7..6d4b2ce58 100644 --- a/plugins/rendermax/renderer_light.cpp +++ b/plugins/rendermax/renderer_light.cpp @@ -562,7 +562,7 @@ void lightingEngineViewscreen::doSun(const lightSource& sky,MapExtras::MapCache& cellArray[block_x][block_y] = sky.power; int emptyCell=0; - for(int z=df::global::world->map.z_count-1;z>=window_z && emptyCell<256;z--) + for(int z=window_z;z< df::global::world->map.z_count && emptyCell<256;z++) { MapExtras::Block* b=map.BlockAt(DFCoord(blockX,blockY,z)); if(!b) From 7c190cd3f0799f385725be5115b54c0965980920 Mon Sep 17 00:00:00 2001 From: Warmist Date: Thu, 27 Jun 2013 16:11:29 +0300 Subject: [PATCH 52/72] Added antialiased lights. They kind of suck. So I disabled them. --- plugins/rendermax/renderer_light.cpp | 114 +++++++++++++++++++------- plugins/rendermax/renderer_light.hpp | 2 +- plugins/rendermax/renderer_opengl.hpp | 28 +++++-- 3 files changed, 105 insertions(+), 39 deletions(-) diff --git a/plugins/rendermax/renderer_light.cpp b/plugins/rendermax/renderer_light.cpp index 88ba41b71..7d955a76a 100644 --- a/plugins/rendermax/renderer_light.cpp +++ b/plugins/rendermax/renderer_light.cpp @@ -222,7 +222,7 @@ void plotSquare(int xm, int ym, int r,std::function setPixel) setPixel(xm-x, ym+r); /* IV.2 Quadrant */ } } -void plotLine(int x0, int y0, int x1, int y1,std::function setPixel) +void plotLine(int x0, int y0, int x1, int y1,lightCell power,std::function setPixel) { int dx = abs(x1-x0), sx = x0 setPixelAA) +{ + int dx = abs(x1-x0), sx = x0= -dx) { /* x step */ + if (x0 == x1) break; + + if (e2+dy < ed) + { + str=1-(e2+dy)/(float)ed; + sumPower+=setPixelAA(power*str,lrdx,lrdy,x0,y0+sy); + strsum+=str; + } + err -= dy; x0 += sx; rdx=sx; + } + if (2*e2 <= dy) { /* y step */ + if (y0 == y1) break; + + if (dx-e2 < ed) + { + str=1-(dx-e2)/(float)ed; + sumPower+=setPixelAA(power*str,lrdx,lrdy,x2+sx,y0); + strsum+=str; + } + err += dx; y0 += sy; rdy=sy; + } + if(strsum<0.001f) + return; + sumPower=sumPower/strsum; + if(sumPower.dot(sumPower)<0.00001f) + return; + power=sumPower; + } +} lightCell blendMax(lightCell a,lightCell b) { return lightCell(std::max(a.r,b.r),std::max(a.g,b.g),std::max(a.b,b.b)); @@ -248,7 +301,7 @@ lightCell blend(lightCell a,lightCell b) { return blendMax(a,b); } -bool lightingEngineViewscreen::lightUpCell(std::vector & target, lightCell& power,int dx,int dy,int tx,int ty) +lightCell lightingEngineViewscreen::lightUpCell(std::vector & target,lightCell power,int dx,int dy,int tx,int ty) { if(isInViewport(coord2d(tx,ty),mapPort)) { @@ -271,12 +324,12 @@ bool lightingEngineViewscreen::lightUpCell(std::vector & target, ligh if (dsq>0 && !wallhack) { - power*=v.power(dt); + power*=v.pow(dt); } if(ls.radius>0 && dsq>0) { if(power<=ls.power) - return false; + return lightCell(); } //float dt=sqrt(dsq); lightCell oldCol=target[tile]; @@ -284,20 +337,20 @@ bool lightingEngineViewscreen::lightUpCell(std::vector & target, ligh target[tile]=ncol; if(wallhack) - return false; - float pwsq=power.r*power.r+power.g*power.g+power.b*power.b; - return pwsq>levelDim*levelDim; + return lightCell(); + + + return power; } else - return false; + return lightCell(); } void lightingEngineViewscreen::doRay(std::vector & target, lightCell power,int cx,int cy,int tx,int ty) { using namespace std::placeholders; - lightCell curPower=power; - plotLine(cx,cy,tx,ty,std::bind(&lightingEngineViewscreen::lightUpCell,this,std::ref(target),std::ref(curPower),_1,_2,_3,_4)); + + plotLine(cx,cy,tx,ty,power,std::bind(&lightingEngineViewscreen::lightUpCell,this,std::ref(target),_1,_2,_3,_4,_5)); } - void lightingEngineViewscreen::doLight(std::vector & target, int index) { using namespace std::placeholders; @@ -315,21 +368,21 @@ void lightingEngineViewscreen::doLight(std::vector & target, int inde radius*=flicker; power=power*flicker; } - int surrounds = 0; - lightCell curPower; + lightCell surrounds; + - lightUpCell(target, curPower = power, 0, 0,i+0, j+0); + lightUpCell(target,power, 0, 0,i+0, j+0); { - surrounds += lightUpCell(target, curPower = power, 0, 1,i+0, j+1); - surrounds += lightUpCell(target, curPower = power, 1, 1,i+1, j+1); - surrounds += lightUpCell(target, curPower = power, 1, 0,i+1, j+0); - surrounds += lightUpCell(target, curPower = power, 1,-1,i+1, j-1); - surrounds += lightUpCell(target, curPower = power, 0,-1,i+0, j-1); - surrounds += lightUpCell(target, curPower = power,-1,-1,i-1, j-1); - surrounds += lightUpCell(target, curPower = power,-1, 0,i-1, j+0); - surrounds += lightUpCell(target, curPower = power,-1, 1,i-1, j+1); + surrounds += lightUpCell(target, power, 0, 1,i+0, j+1); + surrounds += lightUpCell(target, power, 1, 1,i+1, j+1); + surrounds += lightUpCell(target, power, 1, 0,i+1, j+0); + surrounds += lightUpCell(target, power, 1,-1,i+1, j-1); + surrounds += lightUpCell(target, power, 0,-1,i+0, j-1); + surrounds += lightUpCell(target, power,-1,-1,i-1, j-1); + surrounds += lightUpCell(target, power,-1, 0,i-1, j+0); + surrounds += lightUpCell(target, power,-1, 1,i-1, j+1); } - if(surrounds) + if(surrounds.dot(surrounds)>0.00001f) { plotSquare(i,j,radius, std::bind(&lightingEngineViewscreen::doRay,this,std::ref(target),power,i,j,_1,_2)); @@ -365,7 +418,6 @@ void lightingEngineViewscreen::calculate() } doOcupancyAndLights(); doFovs(); - //for each lightsource in viewscreen+x do light } void lightingEngineViewscreen::updateWindow() { @@ -405,7 +457,7 @@ void lightingEngineViewscreen::addOclusion(int tileId,const lightCell& c,float t if(thickness > 0.999 && thickness < 1.001) ocupancy[tileId]*=c; else - ocupancy[tileId]*=(c.power(thickness)); + ocupancy[tileId]*=(c.pow(thickness)); } lightCell getStandartColor(int colorId) { @@ -496,7 +548,7 @@ lightCell lightingEngineViewscreen::propogateSun(MapExtras::Block* b, int x,int ret*=matIce.transparency; else if(basicShapeIce==df::tiletype_shape_basic::Floor || basicShapeIce==df::tiletype_shape_basic::Ramp || shapeIce==df::tiletype_shape::STAIR_UP) if(!lastLevel) - ret*=matIce.transparency.power(1.0f/7.0f); + ret*=matIce.transparency.pow(1.0f/7.0f); } lightDef=getMaterial(mat.mat_type,mat.mat_index); @@ -511,7 +563,7 @@ lightCell lightingEngineViewscreen::propogateSun(MapExtras::Block* b, int x,int { if(!lastLevel) - ret*=lightDef->transparency.power(1.0f/7.0f); + ret*=lightDef->transparency.pow(1.0f/7.0f); } else if(shape==df::tiletype_shape::STAIR_DOWN || shape==df::tiletype_shape::STAIR_UPDOWN) { @@ -519,11 +571,11 @@ lightCell lightingEngineViewscreen::propogateSun(MapExtras::Block* b, int x,int } if(d.bits.liquid_type == df::enums::tile_liquid::Water && d.bits.flow_size > 0) { - ret *=matWater.transparency.power((float)d.bits.flow_size/7.0f); + ret *=matWater.transparency.pow((float)d.bits.flow_size/7.0f); } else if(d.bits.liquid_type == df::enums::tile_liquid::Magma && d.bits.flow_size > 0) { - ret *=matLava.transparency.power((float)d.bits.flow_size/7.0f); + ret *=matLava.transparency.pow((float)d.bits.flow_size/7.0f); } return ret; } @@ -626,7 +678,7 @@ void lightingEngineViewscreen::doOcupancyAndLights() daycol= fmod(dayHour,24.0f)/24.0f; //1->12h 0->24h lightCell sky_col=getSkyColor(daycol); - lightSource sky(sky_col, 15);//auto calculate best size + lightSource sky(sky_col, -1);//auto calculate best size lightSource candle(lightCell(0.96f,0.84f,0.03f),5); lightSource torch(lightCell(0.9f,0.75f,0.3f),8); diff --git a/plugins/rendermax/renderer_light.hpp b/plugins/rendermax/renderer_light.hpp index e5a9db787..58676e29c 100644 --- a/plugins/rendermax/renderer_light.hpp +++ b/plugins/rendermax/renderer_light.hpp @@ -152,7 +152,7 @@ private: void doRay(std::vector & target, lightCell power,int cx,int cy,int tx,int ty); void doFovs(); void doLight(std::vector & target, int index); - bool lightUpCell(std::vector & target, lightCell& power,int dx,int dy,int tx,int ty); + lightCell lightUpCell(std::vector & target, lightCell power,int dx,int dy,int tx,int ty); bool addLight(int tileId,const lightSource& light); void addOclusion(int tileId,const lightCell& c,float thickness); diff --git a/plugins/rendermax/renderer_opengl.hpp b/plugins/rendermax/renderer_opengl.hpp index 8ba35f5ea..151ff94f0 100644 --- a/plugins/rendermax/renderer_opengl.hpp +++ b/plugins/rendermax/renderer_opengl.hpp @@ -196,7 +196,7 @@ struct lightCell { } - lightCell operator-(lightCell cell) const + lightCell operator-(const lightCell& cell) const { return lightCell(r-cell.r,g-cell.g,b-cell.b); } @@ -208,17 +208,31 @@ struct lightCell { return lightCell(r/val,g/val,b/val); } - lightCell operator*(lightCell cell) const + lightCell operator*(const lightCell& cell) const { return lightCell(r*cell.r,g*cell.g,b*cell.b); } - lightCell operator*=(lightCell cell) + lightCell operator*=(float val) + { + r*=val; + g*=val; + b*=val; + return *this; + } + lightCell operator*=(const lightCell& cell) { r*=cell.r; g*=cell.g; b*=cell.b; return *this; } + lightCell operator+=(const lightCell& cell) + { + r+=cell.r; + g+=cell.g; + b+=cell.b; + return *this; + } lightCell operator+(const lightCell& other) const { return lightCell(r+other.r,g+other.g,b+other.b); @@ -231,13 +245,13 @@ struct lightCell { return r*other.r+g*other.g+b*other.b; } - lightCell power(const float exp) const + lightCell pow(const float exp) const { - return lightCell(pow(r, exp), pow(g, exp), pow(b, exp)); + return lightCell(std::pow(r, exp), std::pow(g, exp), std::pow(b, exp)); } - lightCell power(const int exp) const + lightCell pow(const int exp) const { - return lightCell(pow(r, exp), pow(g, exp), pow(b, exp)); + return lightCell(std::pow(r, exp), std::pow(g, exp), std::pow(b, exp)); } }; struct renderer_test : public renderer_wrap { From 26d557fc68423eba7bac68afe1278ca20dee9c1e Mon Sep 17 00:00:00 2001 From: Warmist Date: Thu, 27 Jun 2013 18:11:50 +0300 Subject: [PATCH 53/72] Fixed bug with buildings and added gems to material definition. --- plugins/rendermax/renderer_light.cpp | 8 ++++++-- plugins/rendermax/renderer_light.hpp | 1 - plugins/rendermax/rendermax.lua | 12 +++++++++++- 3 files changed, 17 insertions(+), 4 deletions(-) diff --git a/plugins/rendermax/renderer_light.cpp b/plugins/rendermax/renderer_light.cpp index 811a03660..4c3db88f9 100644 --- a/plugins/rendermax/renderer_light.cpp +++ b/plugins/rendermax/renderer_light.cpp @@ -882,11 +882,15 @@ void lightingEngineViewscreen::doOcupancyAndLights() df::coord2d p1(bld->x1,bld->y1); df::coord2d p2(bld->x2,bld->y2); p1=worldToViewportCoord(p1,vp,window2d); - p2=worldToViewportCoord(p1,vp,window2d); + p2=worldToViewportCoord(p2,vp,window2d); if(isInViewport(p1,vp)||isInViewport(p2,vp)) { - int tile=getIndex(p1.x,p1.y); //TODO multitile buildings. How they would work? + int tile; + if(isInViewport(p1,vp)) + tile=getIndex(p1.x,p1.y); //TODO multitile buildings. How they would work? + else + tile=getIndex(p2.x,p2.y); df::building_type type = bld->getType(); buildingLightDef* def=getBuilding(bld); if(!def) diff --git a/plugins/rendermax/renderer_light.hpp b/plugins/rendermax/renderer_light.hpp index 58676e29c..5a53242b0 100644 --- a/plugins/rendermax/renderer_light.hpp +++ b/plugins/rendermax/renderer_light.hpp @@ -114,7 +114,6 @@ struct matLightDef matLightDef(lightCell transparency):isTransparent(true),isEmiting(false),transparency(transparency){} lightSource makeSource(float size=1) const { - //TODO implement sizeModifiesPower/range if(size>0.999 && size<1.001) return lightSource(emitColor,radius); else diff --git a/plugins/rendermax/rendermax.lua b/plugins/rendermax/rendermax.lua index 74e5fc2d0..df2619864 100644 --- a/plugins/rendermax/rendermax.lua +++ b/plugins/rendermax/rendermax.lua @@ -92,6 +92,16 @@ function makeMaterialDef(transparency,emitance,radius,flags) end return {tr=transparency,em=emitance,rad=radius,flags=flg} end +function colorFrom16(col16) + return copyall(df.global.enabler.ccolor[col16]) +end +function addGems() + for k,v in pairs(df.global.world.raws.inorganics) do + if v.material.flags.IS_GEM then + addMaterial("INORGANIC:"..v.id,colorFrom16(v.material.build_color[0])) + end + end +end ------------------------------------------------------------------------ ---------------- Configuration Starts Here ------------------------- ------------------------------------------------------------------------ @@ -128,7 +138,7 @@ addMaterial("PLANT:MUSHROOM_HELMET_PLUMP",nil,{0.2,0.1,0.6},2) addMaterial("INORGANIC:ADAMANTINE",{0.1,0.3,0.3},{0.1,0.3,0.3},4) -- creature stuff addMaterial("CREATURE:DRAGON:BLOOD",nil,{0.6,0.1,0.1},4) --- TODO gems +addGems() --buildings addBuilding("Statue",{1,1,1},{0.9,0.75,0.3},8) addBuilding("Bed",{1,1,1},{0.3,0.2,0.0},2) From 368a326b409d18b23f0a5ccbd99bca7a8588231a Mon Sep 17 00:00:00 2001 From: Warmist Date: Fri, 28 Jun 2013 17:22:24 +0300 Subject: [PATCH 54/72] Fix for gems not getting right color. --- plugins/rendermax/rendermax.lua | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/plugins/rendermax/rendermax.lua b/plugins/rendermax/rendermax.lua index df2619864..cbd7b3536 100644 --- a/plugins/rendermax/rendermax.lua +++ b/plugins/rendermax/rendermax.lua @@ -93,12 +93,13 @@ function makeMaterialDef(transparency,emitance,radius,flags) return {tr=transparency,em=emitance,rad=radius,flags=flg} end function colorFrom16(col16) - return copyall(df.global.enabler.ccolor[col16]) + local col=df.global.enabler.ccolor[col16] + return {col[0],col[1],col[2]} end function addGems() for k,v in pairs(df.global.world.raws.inorganics) do if v.material.flags.IS_GEM then - addMaterial("INORGANIC:"..v.id,colorFrom16(v.material.build_color[0])) + addMaterial("INORGANIC:"..v.id,colorFrom16(v.material.tile_color[0]+v.material.tile_color[2]*8)) end end end From 102b2ed45086d0e6f0028dc59e4da26a5927b855 Mon Sep 17 00:00:00 2001 From: Japa Date: Fri, 28 Jun 2013 23:47:54 +0530 Subject: [PATCH 55/72] Fixed broken buildings, also added floodgate functionality. --- plugins/rendermax/renderer_light.cpp | 7 +++++++ plugins/rendermax/renderer_light.hpp | 1 + plugins/rendermax/rendermax.lua | 3 ++- 3 files changed, 10 insertions(+), 1 deletion(-) diff --git a/plugins/rendermax/renderer_light.cpp b/plugins/rendermax/renderer_light.cpp index 4c3db88f9..2dc826b6f 100644 --- a/plugins/rendermax/renderer_light.cpp +++ b/plugins/rendermax/renderer_light.cpp @@ -21,6 +21,7 @@ #include "df/world.h" #include "df/building.h" #include "df/building_doorst.h" +#include "df/building_floodgatest.h" #include "df/plant.h" #include "df/plant_raw.h" @@ -903,6 +904,12 @@ void lightingEngineViewscreen::doOcupancyAndLights() if(!door->door_flags.bits.closed) continue; } + else if(type==df::enums::building_type::Floodgate) + { + df::building_floodgatest* gate=static_cast(bld); + if(!gate->gate_flags.bits.closed) + continue; + } if(def->useMaterial) diff --git a/plugins/rendermax/renderer_light.hpp b/plugins/rendermax/renderer_light.hpp index 5a53242b0..0d192b872 100644 --- a/plugins/rendermax/renderer_light.hpp +++ b/plugins/rendermax/renderer_light.hpp @@ -127,6 +127,7 @@ struct buildingLightDef bool useMaterial; float thickness; float size; + buildingLightDef():poweredOnly(false),useMaterial(true),thickness(1.0f),size(1.0f){} }; class lightingEngineViewscreen:public lightingEngine { diff --git a/plugins/rendermax/rendermax.lua b/plugins/rendermax/rendermax.lua index cbd7b3536..c5e7c21a7 100644 --- a/plugins/rendermax/rendermax.lua +++ b/plugins/rendermax/rendermax.lua @@ -145,4 +145,5 @@ addBuilding("Statue",{1,1,1},{0.9,0.75,0.3},8) addBuilding("Bed",{1,1,1},{0.3,0.2,0.0},2) addBuilding("WindowGlass",nil,nil,0,{"useMaterial"}) addBuilding("WindowGem",nil,nil,0,{"useMaterial"}) -addBuilding("Door",nil,nil,0,{"useMaterial"}) -- special case, only closed door obstruct/emit light \ No newline at end of file +addBuilding("Door",nil,nil,0,{"useMaterial"}) -- special case, only closed door obstruct/emit light +addBuilding("Floodgate",nil,nil,0,{"useMaterial"}) -- special case, only closed door obstruct/emit light From 269a2680c8809c210c1a2a78b31bc7f9c4335f18 Mon Sep 17 00:00:00 2001 From: Warmist Date: Fri, 28 Jun 2013 23:34:47 +0300 Subject: [PATCH 56/72] Added occlusionON|occlusionOFF commands --- plugins/rendermax/renderer_light.cpp | 10 +++++----- plugins/rendermax/renderer_light.hpp | 5 +++++ plugins/rendermax/rendermax.cpp | 10 +++++++++- 3 files changed, 19 insertions(+), 6 deletions(-) diff --git a/plugins/rendermax/renderer_light.cpp b/plugins/rendermax/renderer_light.cpp index 4c3db88f9..0ca4cadad 100644 --- a/plugins/rendermax/renderer_light.cpp +++ b/plugins/rendermax/renderer_light.cpp @@ -176,7 +176,7 @@ rect2d getMapViewport() } return mkrect_wh(1,1,view_rb,view_height+1); } -lightingEngineViewscreen::lightingEngineViewscreen(renderer_light* target):lightingEngine(target) +lightingEngineViewscreen::lightingEngineViewscreen(renderer_light* target):lightingEngine(target),doDebug(false) { reinit(); defaultSettings(); @@ -429,10 +429,10 @@ void lightingEngineViewscreen::updateWindow() return; } - //if(showOcupancy) - //std::swap(ocupancy,myRenderer->lightGrid); - //else - std::swap(lightMap,myRenderer->lightGrid); + if(doDebug) + std::swap(ocupancy,myRenderer->lightGrid); + else + std::swap(lightMap,myRenderer->lightGrid); rect2d vp=getMapViewport(); myRenderer->invalidateRect(vp.first.x,vp.first.y,vp.second.x-vp.first.x,vp.second.y-vp.first.y); diff --git a/plugins/rendermax/renderer_light.hpp b/plugins/rendermax/renderer_light.hpp index 5a53242b0..ad90ca5eb 100644 --- a/plugins/rendermax/renderer_light.hpp +++ b/plugins/rendermax/renderer_light.hpp @@ -79,6 +79,7 @@ public: virtual void clear()=0; virtual void setHour(float h)=0; + virtual void debug(bool enable)=0; protected: renderer_light* myRenderer; }; @@ -140,6 +141,8 @@ public: void loadSettings(); void clear(); + + void debug(bool enable){doDebug=enable;}; private: df::coord2d worldToViewportCoord(const df::coord2d& in,const DFHack::rect2d& r,const df::coord2d& window2d) ; @@ -188,6 +191,8 @@ public: void lightWorkerThread(void * arg); private: lightCell getSkyColor(float v); + bool doDebug; + //settings float daySpeed; float dayHour; //<0 to cycle diff --git a/plugins/rendermax/rendermax.cpp b/plugins/rendermax/rendermax.cpp index 6a1b40890..24ba8c4d8 100644 --- a/plugins/rendermax/rendermax.cpp +++ b/plugins/rendermax/rendermax.cpp @@ -49,7 +49,8 @@ DFhackCExport command_result plugin_init (color_ostream &out, std::vector |cycle - set time to x or cycle (same effect if x<0)\n" + " rendermax light sun |cycle - set time to x (in hours) or cycle (same effect if x<0)\n" + " rendermax light occlusionON|occlusionOFF - debug the occlusion map\n" " rendermax disable\n" )); return CR_OK; @@ -385,6 +386,13 @@ static command_result rendermax(color_ostream &out, vector & parameters engine->setHour(h); } } + else if(parameters[1]=="occlusionON") + { + engine->debug(true); + }else if(parameters[1]=="occlusionOFF") + { + engine->debug(false); + } } else out.printerr("Light mode already enabled"); From 647b14b47181c973e62e16af6a0b687c1060a15d Mon Sep 17 00:00:00 2001 From: Warmist Date: Fri, 28 Jun 2013 23:51:52 +0300 Subject: [PATCH 57/72] Fixed potential error with building getting transparent on un-powering. --- plugins/rendermax/renderer_light.cpp | 22 +++++++++++++--------- 1 file changed, 13 insertions(+), 9 deletions(-) diff --git a/plugins/rendermax/renderer_light.cpp b/plugins/rendermax/renderer_light.cpp index 0ca4cadad..5dcc47dca 100644 --- a/plugins/rendermax/renderer_light.cpp +++ b/plugins/rendermax/renderer_light.cpp @@ -895,8 +895,6 @@ void lightingEngineViewscreen::doOcupancyAndLights() buildingLightDef* def=getBuilding(bld); if(!def) continue; - if(def->poweredOnly && bld->isUnpowered()) - continue; if(type==df::enums::building_type::Door) { df::building_doorst* door=static_cast(bld); @@ -909,13 +907,16 @@ void lightingEngineViewscreen::doOcupancyAndLights() { matLightDef* mat=getMaterial(bld->mat_type,bld->mat_index); if(!mat)mat=&matWall; - if(def->light.isEmiting) - { - addLight(tile,def->light.makeSource(def->size)); - } - else if(mat->isEmiting) + if(!def->poweredOnly || !bld->isUnpowered()) //not powered. Add occlusion only. { - addLight(tile,mat->makeSource(def->size)); + if(def->light.isEmiting) + { + addLight(tile,def->light.makeSource(def->size)); + } + else if(mat->isEmiting) + { + addLight(tile,mat->makeSource(def->size)); + } } if(def->light.isTransparent) { @@ -928,7 +929,10 @@ void lightingEngineViewscreen::doOcupancyAndLights() } else { - applyMaterial(tile,def->light,def->size,def->thickness); + if(!def->poweredOnly || !bld->isUnpowered())//not powered. Add occlusion only. + addOclusion(tile,def->light.transparency,def->size); + else + applyMaterial(tile,def->light,def->size,def->thickness); } } } From 24d8a1f1c1ce570ef339402d820dc875daea9876 Mon Sep 17 00:00:00 2001 From: Warmist Date: Sat, 29 Jun 2013 12:23:21 +0300 Subject: [PATCH 58/72] Added headers to tinythread cmake so that ide would show them. --- depends/tthread/CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/depends/tthread/CMakeLists.txt b/depends/tthread/CMakeLists.txt index d34c19c84..fa1a57899 100644 --- a/depends/tthread/CMakeLists.txt +++ b/depends/tthread/CMakeLists.txt @@ -1,5 +1,5 @@ PROJECT(dfhack-tinythread) -ADD_LIBRARY(dfhack-tinythread STATIC EXCLUDE_FROM_ALL tinythread.cpp) +ADD_LIBRARY(dfhack-tinythread STATIC EXCLUDE_FROM_ALL tinythread.cpp tinythread.h fast_mutex.h) if(UNIX) target_link_libraries(dfhack-tinythread pthread) endif() From 0bd627a6f6e65a1e2bd64e45f6bccb5041840603 Mon Sep 17 00:00:00 2001 From: Japa Date: Sun, 21 Jul 2013 10:28:46 +0530 Subject: [PATCH 59/72] Got basic mesh generation working for a unity Visualizer, as well as a block editor for the same. --- clients/unity/.gitignore | 11 + .../Assembly-CSharp-Editor-vs.csproj | 69 ++++ .../Assembly-CSharp-Editor.csproj | 69 ++++ .../simple_sample/Assembly-CSharp-Editor.pidb | Bin 0 -> 7163 bytes .../simple_sample/Assembly-CSharp-vs.csproj | 73 ++++ .../simple_sample/Assembly-CSharp.csproj | 73 ++++ .../unity/simple_sample/Assembly-CSharp.pidb | Bin 0 -> 130247 bytes .../unity/simple_sample/Assets/ArenaMode.png | Bin 0 -> 23372 bytes clients/unity/simple_sample/Assets/Bad.mat | Bin 0 -> 4212 bytes .../Assets/DFHack/isoworldremote.pb.cs | 312 ++++++++++++++++++ .../Assets/Editor/MapBlockEditor.cs | 104 ++++++ .../unity/simple_sample/Assets/GameWindow.cs | 57 ++++ clients/unity/simple_sample/Assets/HUDFPS.cs | 79 +++++ .../simple_sample/Assets/MapGen/GameMap.cs | 15 + .../simple_sample/Assets/MapGen/MapBlock.cs | 262 +++++++++++++++ .../Assets/RemoteClient/RemoteClient.cs | 141 +++++++- .../Assets/RemoteClient/Tools.cs | 2 +- .../unity/simple_sample/Assets/Start.unity | Bin 12760 -> 89520 bytes .../unity/simple_sample/Assets/TestScript.cs | 12 +- .../unity/simple_sample/Assets/UV Test.mat | Bin 0 -> 4512 bytes clients/unity/simple_sample/Assets/UVTest.png | Bin 0 -> 298948 bytes .../simple_sample/Assets/VertexColor.shader | 33 ++ clients/unity/simple_sample/Assets/grid.png | Bin 0 -> 1615 bytes .../simple_sample/Library/AnnotationManager | Bin 4116 -> 4596 bytes .../simple_sample/Library/AssetVersioning.db | Bin 0 -> 14336 bytes .../Library/EditorUserBuildSettings.asset | Bin 4160 -> 4160 bytes .../Library/InspectorExpandedItems.asset | Bin 4104 -> 4292 bytes .../Assembly-CSharp-Editor.dll | Bin 0 -> 5632 bytes .../Assembly-CSharp-Editor.dll.mdb | Bin 0 -> 1027 bytes .../ScriptAssemblies/Assembly-CSharp.dll | Bin 69120 -> 88064 bytes .../ScriptAssemblies/Assembly-CSharp.dll.mdb | Bin 19136 -> 25174 bytes .../unity/simple_sample/Library/ScriptMapper | Bin 8420 -> 8448 bytes .../simple_sample/Library/assetDatabase3 | Bin 25144 -> 31088 bytes .../unity/simple_sample/Library/guidmapper | Bin 4580 -> 5204 bytes .../2f/2fb12edbd5d56cb4c99ccf773df52492 | Bin 0 -> 7669 bytes .../36/364a32494f42e934bae30ff47badc45a | Bin 25865 -> 25869 bytes .../49/49176d7675a998345966feca21555311 | Bin 0 -> 17905 bytes .../6e/6e1305e96d61f204f8229e0a0cb7f8c1 | Bin 0 -> 8921 bytes .../73/73b3c5754a89e43409dcf23866eb0484 | Bin 29561 -> 33669 bytes .../89/89b0f8fea628a544a9855c108fbe35dc | Bin 0 -> 364159 bytes .../8d/8d11b6dacbf85e24ead2e95cafce40fd | Bin 0 -> 14689 bytes .../9f/9fd804cbd377fd445805d7e5eea47877 | Bin 0 -> 10205 bytes .../aa/aa92a0e1eefe93b40bec1e868142e050 | Bin 0 -> 5037 bytes .../b5/b54fa8be8a38a9f4e8f53b4399135e30 | Bin 0 -> 7001 bytes .../c7/c7e34aa4b4a41d1478337506ce720e18 | Bin 0 -> 4276 bytes .../d4/d420514133a0fbd4990025b3e1dac764 | Bin 0 -> 50665 bytes .../e8/e85d437f881938247992e492006de2df | Bin 5325 -> 5349 bytes .../f9/f9efc5e870ab48243b2f508f00b7a740 | Bin 0 -> 4276 bytes .../fc/fcc33854b846d0e4aa14f8afb74e173b | Bin 0 -> 20406 bytes .../fd/fd22bd16464e8784cbd88809cdc697a3 | Bin 0 -> 4276 bytes .../ff/ff990239cc3bc4a45a362f932463d378 | Bin 0 -> 5208 bytes .../ff/ffba25341839373409b0cd511e9b1761 | Bin 0 -> 722870 bytes .../simple_sample/simple_sample-csharp.sln | 45 +++ clients/unity/simple_sample/simple_sample.sln | 45 +++ .../simple_sample/simple_sample.userprefs | 8 + plugins/proto/isoworldremote.proto | 17 + plugins/stonesense | 2 +- 57 files changed, 1415 insertions(+), 14 deletions(-) create mode 100644 clients/unity/.gitignore create mode 100644 clients/unity/simple_sample/Assembly-CSharp-Editor-vs.csproj create mode 100644 clients/unity/simple_sample/Assembly-CSharp-Editor.csproj create mode 100644 clients/unity/simple_sample/Assembly-CSharp-Editor.pidb create mode 100644 clients/unity/simple_sample/Assembly-CSharp-vs.csproj create mode 100644 clients/unity/simple_sample/Assembly-CSharp.csproj create mode 100644 clients/unity/simple_sample/Assembly-CSharp.pidb create mode 100644 clients/unity/simple_sample/Assets/ArenaMode.png create mode 100644 clients/unity/simple_sample/Assets/Bad.mat create mode 100644 clients/unity/simple_sample/Assets/DFHack/isoworldremote.pb.cs create mode 100644 clients/unity/simple_sample/Assets/Editor/MapBlockEditor.cs create mode 100644 clients/unity/simple_sample/Assets/GameWindow.cs create mode 100644 clients/unity/simple_sample/Assets/HUDFPS.cs create mode 100644 clients/unity/simple_sample/Assets/MapGen/GameMap.cs create mode 100644 clients/unity/simple_sample/Assets/MapGen/MapBlock.cs create mode 100644 clients/unity/simple_sample/Assets/UV Test.mat create mode 100644 clients/unity/simple_sample/Assets/UVTest.png create mode 100644 clients/unity/simple_sample/Assets/VertexColor.shader create mode 100644 clients/unity/simple_sample/Assets/grid.png create mode 100644 clients/unity/simple_sample/Library/AssetVersioning.db create mode 100644 clients/unity/simple_sample/Library/ScriptAssemblies/Assembly-CSharp-Editor.dll create mode 100644 clients/unity/simple_sample/Library/ScriptAssemblies/Assembly-CSharp-Editor.dll.mdb create mode 100644 clients/unity/simple_sample/Library/metadata/2f/2fb12edbd5d56cb4c99ccf773df52492 create mode 100644 clients/unity/simple_sample/Library/metadata/49/49176d7675a998345966feca21555311 create mode 100644 clients/unity/simple_sample/Library/metadata/6e/6e1305e96d61f204f8229e0a0cb7f8c1 create mode 100644 clients/unity/simple_sample/Library/metadata/89/89b0f8fea628a544a9855c108fbe35dc create mode 100644 clients/unity/simple_sample/Library/metadata/8d/8d11b6dacbf85e24ead2e95cafce40fd create mode 100644 clients/unity/simple_sample/Library/metadata/9f/9fd804cbd377fd445805d7e5eea47877 create mode 100644 clients/unity/simple_sample/Library/metadata/aa/aa92a0e1eefe93b40bec1e868142e050 create mode 100644 clients/unity/simple_sample/Library/metadata/b5/b54fa8be8a38a9f4e8f53b4399135e30 create mode 100644 clients/unity/simple_sample/Library/metadata/c7/c7e34aa4b4a41d1478337506ce720e18 create mode 100644 clients/unity/simple_sample/Library/metadata/d4/d420514133a0fbd4990025b3e1dac764 create mode 100644 clients/unity/simple_sample/Library/metadata/f9/f9efc5e870ab48243b2f508f00b7a740 create mode 100644 clients/unity/simple_sample/Library/metadata/fc/fcc33854b846d0e4aa14f8afb74e173b create mode 100644 clients/unity/simple_sample/Library/metadata/fd/fd22bd16464e8784cbd88809cdc697a3 create mode 100644 clients/unity/simple_sample/Library/metadata/ff/ff990239cc3bc4a45a362f932463d378 create mode 100644 clients/unity/simple_sample/Library/metadata/ff/ffba25341839373409b0cd511e9b1761 create mode 100644 clients/unity/simple_sample/simple_sample-csharp.sln create mode 100644 clients/unity/simple_sample/simple_sample.sln create mode 100644 clients/unity/simple_sample/simple_sample.userprefs diff --git a/clients/unity/.gitignore b/clients/unity/.gitignore new file mode 100644 index 000000000..d784f4250 --- /dev/null +++ b/clients/unity/.gitignore @@ -0,0 +1,11 @@ +[Oo]bj +[Bb]in +*.user +*.suo +*.[Cc]ache +*.bak +*.ncb +*.log +*.DS_Store +[Tt]humbs.db +Ankh.NoLoad diff --git a/clients/unity/simple_sample/Assembly-CSharp-Editor-vs.csproj b/clients/unity/simple_sample/Assembly-CSharp-Editor-vs.csproj new file mode 100644 index 000000000..c22a3b8ce --- /dev/null +++ b/clients/unity/simple_sample/Assembly-CSharp-Editor-vs.csproj @@ -0,0 +1,69 @@ + + + + Debug + AnyCPU + 10.0.20506 + 2.0 + {AEF4C46B-71B7-6E0B-EF7E-154F411C7DF8} + Library + Properties + + Assembly-CSharp-Editor + v3.5 + 512 + + + true + full + false + Temp\bin\Debug\ + DEBUG;TRACE;UNITY_STANDALONE_WIN;ENABLE_MICROPHONE;ENABLE_IMAGEEFFECTS;ENABLE_WEBCAM;ENABLE_AUDIO_FMOD;UNITY_STANDALONE;ENABLE_NETWORK;ENABLE_MONO;ENABLE_PHYSICS;ENABLE_TERRAIN;ENABLE_CACHING;ENABLE_SUBSTANCE;ENABLE_GENERICS;ENABLE_CLOTH;ENABLE_MOVIES;ENABLE_AUDIO;ENABLE_WWW;ENABLE_SHADOWS;ENABLE_DUCK_TYPING;UNITY_4_1_5;UNITY_4_1;ENABLE_PROFILER;UNITY_EDITOR + prompt + 4 + 0169 + + + pdbonly + true + Temp\bin\Release\ + TRACE + prompt + 4 + 0169 + + + + + + + C:/Program Files (x86)/Unity/Editor/Data/Managed/UnityEngine.dll + + + C:/Program Files (x86)/Unity/Editor/Data/Managed/UnityEditor.dll + + + + + + + Assets\protobuf-net.dll + + + C:\Program Files (x86)\Unity\Editor\Data\Managed\UnityEditor.Graphs.dll + + + + + {AE3AFC6C-A022-3549-CF6C-7716EC410CE6} Assembly-CSharp-vs + + + + + diff --git a/clients/unity/simple_sample/Assembly-CSharp-Editor.csproj b/clients/unity/simple_sample/Assembly-CSharp-Editor.csproj new file mode 100644 index 000000000..0545b4be8 --- /dev/null +++ b/clients/unity/simple_sample/Assembly-CSharp-Editor.csproj @@ -0,0 +1,69 @@ + + + + Debug + AnyCPU + 10.0.20506 + 2.0 + {AEF4C46B-71B7-6E0B-EF7E-154F411C7DF8} + Library + Properties + + Assembly-CSharp-Editor + v3.5 + 512 + + + true + full + false + Temp\bin\Debug\ + DEBUG;TRACE;UNITY_STANDALONE_WIN;ENABLE_MICROPHONE;ENABLE_IMAGEEFFECTS;ENABLE_WEBCAM;ENABLE_AUDIO_FMOD;UNITY_STANDALONE;ENABLE_NETWORK;ENABLE_MONO;ENABLE_PHYSICS;ENABLE_TERRAIN;ENABLE_CACHING;ENABLE_SUBSTANCE;ENABLE_GENERICS;ENABLE_CLOTH;ENABLE_MOVIES;ENABLE_AUDIO;ENABLE_WWW;ENABLE_SHADOWS;ENABLE_DUCK_TYPING;UNITY_4_1_5;UNITY_4_1;ENABLE_PROFILER;UNITY_EDITOR + prompt + 4 + 0169 + + + pdbonly + true + Temp\bin\Release\ + TRACE + prompt + 4 + 0169 + + + + + + + C:/Program Files (x86)/Unity/Editor/Data/Managed/UnityEngine.dll + + + C:/Program Files (x86)/Unity/Editor/Data/Managed/UnityEditor.dll + + + + + + + Assets\protobuf-net.dll + + + C:\Program Files (x86)\Unity\Editor\Data\Managed\UnityEditor.Graphs.dll + + + + + {AE3AFC6C-A022-3549-CF6C-7716EC410CE6} Assembly-CSharp + + + + + diff --git a/clients/unity/simple_sample/Assembly-CSharp-Editor.pidb b/clients/unity/simple_sample/Assembly-CSharp-Editor.pidb new file mode 100644 index 0000000000000000000000000000000000000000..7aee5c8f351010a471516c2f76a53f1c040c4146 GIT binary patch literal 7163 zcmeHMTW=Fb6kf--T_*uUFSHab`ka`Pg!d^>ooBA^k%V zR1Pypa!xTCwk1cBIBD7acn`23tYE%M^3{$tY*z}``H?zhn z9I}&mV>I=8W9?&ydWVW7o!fp{=$>hDh<8N*1j{Q__iY_+z}CN5bqA{!>{(k>XeW+4 zy*w)w26KH>4^wRx417QpJVRfeQGkPZZ{F`X25=oVuZbpq;uiD);q<&?J1M@wEvG^j zz~uvp`W2rX*2nZgeQ+R=^exYK`J~N#&t=v?V$m;Hra|{x-l<93x2zCO==(sM8$8Wz z?wW>@QNVQ zq^@k#%oxeyOe>iV{ABYGm#S*GG|)FGTA=={r^BvOrnIQct=<~WX6p+xo@?5x1BtRQ z9M>`nn=(HKiFYIO!uU8FHAcsVE{vSxgXb^g2eub%hU8C{@IHfW*OL|#Vy8t6rD|B! zrf+Dvf__pJ=?E5?=?XG-LG{~Cs!~^(^c|nr_Nop40PWdD3Fg(WI-O+e9{$&7naxAB zHFz+nw+3Yo;ebEwB%Zye=u>2%U+MYeQLQ<1v&4r$izKif5A z3IdPl=x}_Iqx37gW4Qu)b9(%qe4p#|o~AsK_AU{K!<)fwM-tQ=Y)OmgwRAxoo=%3V z$EXvA-|E)U0jjsiD9gnJUv|xal;v?6y;Xk(PVCI~$_1->Hc5#Ew?f&E3O#uPaIN4q z@*Xua$d_Qz#C%4-nqC6g8>U@!?uy*JX}FGXN**S1Q!Xp>yNnSGM;eKb5Y@|+}Q}9b?ZSG0Bh|471Gt{}!hHkrqdY05`+nRP+Wlcyb z2>c`!B&RO7q4FFG+{l6eaTq@H`CTw#JhkEo6B&*OW!9L%LpEKOgUHY=GTa-FyGh5l zy_oO|267-=gi97%6}2p>R(6VJ$)vncA7JL|zmz~g35KX>ZFAR`T$fdm*&6B6awi?z zqr~YH2*cnU-xf{=en{JPUe;h#VmrAlHXv#&m4=RJ&%p#ziF_#A0cxKJVK5#G|4jD& zzw8g_qcW^oSyA?b>S6L4;hzXy7u((ftpXY&;U7CfH?}CYKug+qq=X+5baz79f$<-xB`Nmf5c%h6cPD4Z3@!*F?C$D85KA^6mAxSNR-T-_zB&8ur`0cyD z9%brlVzJOM%(cmwHm}n5=~|K_C16Jh0Zs=s1e$wEGTSpx8MLFV2S9dsGxtr$(@Zdr h(Uuw|j?E(XCgs{6jLJ#u93^z56G9wP?=N78%D>(_vgrT- literal 0 HcmV?d00001 diff --git a/clients/unity/simple_sample/Assembly-CSharp-vs.csproj b/clients/unity/simple_sample/Assembly-CSharp-vs.csproj new file mode 100644 index 000000000..0ad90a354 --- /dev/null +++ b/clients/unity/simple_sample/Assembly-CSharp-vs.csproj @@ -0,0 +1,73 @@ + + + + Debug + AnyCPU + 10.0.20506 + 2.0 + {AE3AFC6C-A022-3549-CF6C-7716EC410CE6} + Library + Properties + + Assembly-CSharp + v3.5 + 512 + + + true + full + false + Temp\bin\Debug\ + DEBUG;TRACE;UNITY_STANDALONE_WIN;ENABLE_MICROPHONE;ENABLE_IMAGEEFFECTS;ENABLE_WEBCAM;ENABLE_AUDIO_FMOD;UNITY_STANDALONE;ENABLE_NETWORK;ENABLE_MONO;ENABLE_PHYSICS;ENABLE_TERRAIN;ENABLE_CACHING;ENABLE_SUBSTANCE;ENABLE_GENERICS;ENABLE_CLOTH;ENABLE_MOVIES;ENABLE_AUDIO;ENABLE_WWW;ENABLE_SHADOWS;ENABLE_DUCK_TYPING;UNITY_4_1_5;UNITY_4_1;ENABLE_PROFILER;UNITY_EDITOR + prompt + 4 + 0169 + + + pdbonly + true + Temp\bin\Release\ + TRACE + prompt + 4 + 0169 + + + + + + + C:/Program Files (x86)/Unity/Editor/Data/Managed/UnityEngine.dll + + + C:/Program Files (x86)/Unity/Editor/Data/Managed/UnityEditor.dll + + + + + + + + + + + + + + + + + + Assets\protobuf-net.dll + + + + + + diff --git a/clients/unity/simple_sample/Assembly-CSharp.csproj b/clients/unity/simple_sample/Assembly-CSharp.csproj new file mode 100644 index 000000000..0ad90a354 --- /dev/null +++ b/clients/unity/simple_sample/Assembly-CSharp.csproj @@ -0,0 +1,73 @@ + + + + Debug + AnyCPU + 10.0.20506 + 2.0 + {AE3AFC6C-A022-3549-CF6C-7716EC410CE6} + Library + Properties + + Assembly-CSharp + v3.5 + 512 + + + true + full + false + Temp\bin\Debug\ + DEBUG;TRACE;UNITY_STANDALONE_WIN;ENABLE_MICROPHONE;ENABLE_IMAGEEFFECTS;ENABLE_WEBCAM;ENABLE_AUDIO_FMOD;UNITY_STANDALONE;ENABLE_NETWORK;ENABLE_MONO;ENABLE_PHYSICS;ENABLE_TERRAIN;ENABLE_CACHING;ENABLE_SUBSTANCE;ENABLE_GENERICS;ENABLE_CLOTH;ENABLE_MOVIES;ENABLE_AUDIO;ENABLE_WWW;ENABLE_SHADOWS;ENABLE_DUCK_TYPING;UNITY_4_1_5;UNITY_4_1;ENABLE_PROFILER;UNITY_EDITOR + prompt + 4 + 0169 + + + pdbonly + true + Temp\bin\Release\ + TRACE + prompt + 4 + 0169 + + + + + + + C:/Program Files (x86)/Unity/Editor/Data/Managed/UnityEngine.dll + + + C:/Program Files (x86)/Unity/Editor/Data/Managed/UnityEditor.dll + + + + + + + + + + + + + + + + + + Assets\protobuf-net.dll + + + + + + diff --git a/clients/unity/simple_sample/Assembly-CSharp.pidb b/clients/unity/simple_sample/Assembly-CSharp.pidb new file mode 100644 index 0000000000000000000000000000000000000000..b50da3cb0ae079790fc876a130d60aad701f6d88 GIT binary patch literal 130247 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 literal 0 HcmV?d00001 diff --git a/clients/unity/simple_sample/Assets/ArenaMode.png b/clients/unity/simple_sample/Assets/ArenaMode.png new file mode 100644 index 0000000000000000000000000000000000000000..57f5651c21efada4c4b0aca35663e26d0aea6441 GIT binary patch literal 23372 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 literal 0 HcmV?d00001 diff --git a/clients/unity/simple_sample/Assets/Bad.mat b/clients/unity/simple_sample/Assets/Bad.mat new file mode 100644 index 0000000000000000000000000000000000000000..2a21641760ad09663517e11eb6fd119d1dde4df7 GIT binary patch literal 4212 zcmeHKS##4c5LUS<_kBaS@0OPPZVN3i3^YS2Pt0_bSZU3qc1KoA!;^nGVZW8-C?2KH zJY;7aue6_bSD#jrBgE)WAr2cM#9n&SONd8f6Jw8C6XI{T+a00y33|RrqjW6WVn$|4 zkf94CWIKLxA$HSi@l#?RPKwo~`Nl8RG#}$g&9&unCU%e!t{`|jyf5&FB@oJ}??>QsT+YBHz&6v$JExHG<= zLSK_{QBa`mtdA(X%*o8Sxp0lQVx1XY(Q_3z5-e6Cal7Gs08?G{3xsj}4cZMCJwHqY zwfk4%QUJj#VYw8UYNkmfz*NnHLd7w}8;77~T`TOILglS3&^A6+EAmn|xJ z%%V#;hE*$hJb@pr7zp0R*%7?ZeEpJ2-GRz4m}Y)Oe5CmC>xf@$4gHhgkbE+uw4JOS#4^Yj3c9 zYM@=ReL7%A7p7I)SA#0>iHKVX5Bf`S7dATDaYIYp8DGa$Rg35&ZoO@4T4m|FZqn^E zlpzB{28Ij_8TgMGz-Q}>jQEuI|C{1_Zt07R6Z(ejrJvK~gQq9B9q`|GiSIh}`}X|p EKX}XDo&W#< literal 0 HcmV?d00001 diff --git a/clients/unity/simple_sample/Assets/DFHack/isoworldremote.pb.cs b/clients/unity/simple_sample/Assets/DFHack/isoworldremote.pb.cs new file mode 100644 index 000000000..46c85e370 --- /dev/null +++ b/clients/unity/simple_sample/Assets/DFHack/isoworldremote.pb.cs @@ -0,0 +1,312 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +// Generated from: isoworldremote.proto +namespace isoworldremote +{ + [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"EmbarkTileLayer")] + public partial class EmbarkTileLayer : global::ProtoBuf.IExtensible + { + public EmbarkTileLayer() {} + + private readonly global::System.Collections.Generic.List _mat_type_table = new global::System.Collections.Generic.List(); + [global::ProtoBuf.ProtoMember(4, Name=@"mat_type_table", DataFormat = global::ProtoBuf.DataFormat.TwosComplement, Options = global::ProtoBuf.MemberSerializationOptions.Packed)] + public global::System.Collections.Generic.List mat_type_table + { + get { return _mat_type_table; } + } + + private readonly global::System.Collections.Generic.List _mat_subtype_table = new global::System.Collections.Generic.List(); + [global::ProtoBuf.ProtoMember(5, Name=@"mat_subtype_table", DataFormat = global::ProtoBuf.DataFormat.TwosComplement, Options = global::ProtoBuf.MemberSerializationOptions.Packed)] + public global::System.Collections.Generic.List mat_subtype_table + { + get { return _mat_subtype_table; } + } + + private readonly global::System.Collections.Generic.List _tile_shape_table = new global::System.Collections.Generic.List(); + [global::ProtoBuf.ProtoMember(6, Name=@"tile_shape_table", DataFormat = global::ProtoBuf.DataFormat.TwosComplement, Options = global::ProtoBuf.MemberSerializationOptions.Packed)] + public global::System.Collections.Generic.List tile_shape_table + { + get { return _tile_shape_table; } + } + + private global::ProtoBuf.IExtension extensionObject; + global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) + { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } + } + + [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"EmbarkTile")] + public partial class EmbarkTile : global::ProtoBuf.IExtensible + { + public EmbarkTile() {} + + private int _world_x; + [global::ProtoBuf.ProtoMember(1, IsRequired = true, Name=@"world_x", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + public int world_x + { + get { return _world_x; } + set { _world_x = value; } + } + private int _world_y; + [global::ProtoBuf.ProtoMember(2, IsRequired = true, Name=@"world_y", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + public int world_y + { + get { return _world_y; } + set { _world_y = value; } + } + private int _world_z; + [global::ProtoBuf.ProtoMember(3, IsRequired = true, Name=@"world_z", DataFormat = global::ProtoBuf.DataFormat.ZigZag)] + public int world_z + { + get { return _world_z; } + set { _world_z = value; } + } + private readonly global::System.Collections.Generic.List _tile_layer = new global::System.Collections.Generic.List(); + [global::ProtoBuf.ProtoMember(4, Name=@"tile_layer", DataFormat = global::ProtoBuf.DataFormat.Default)] + public global::System.Collections.Generic.List tile_layer + { + get { return _tile_layer; } + } + + + private int _current_year = default(int); + [global::ProtoBuf.ProtoMember(5, IsRequired = false, Name=@"current_year", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + [global::System.ComponentModel.DefaultValue(default(int))] + public int current_year + { + get { return _current_year; } + set { _current_year = value; } + } + + private int _current_season = default(int); + [global::ProtoBuf.ProtoMember(6, IsRequired = false, Name=@"current_season", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + [global::System.ComponentModel.DefaultValue(default(int))] + public int current_season + { + get { return _current_season; } + set { _current_season = value; } + } + + private bool _is_valid = default(bool); + [global::ProtoBuf.ProtoMember(7, IsRequired = false, Name=@"is_valid", DataFormat = global::ProtoBuf.DataFormat.Default)] + [global::System.ComponentModel.DefaultValue(default(bool))] + public bool is_valid + { + get { return _is_valid; } + set { _is_valid = value; } + } + private global::ProtoBuf.IExtension extensionObject; + global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) + { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } + } + + [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"TileRequest")] + public partial class TileRequest : global::ProtoBuf.IExtensible + { + public TileRequest() {} + + + private int _want_x = default(int); + [global::ProtoBuf.ProtoMember(1, IsRequired = false, Name=@"want_x", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + [global::System.ComponentModel.DefaultValue(default(int))] + public int want_x + { + get { return _want_x; } + set { _want_x = value; } + } + + private int _want_y = default(int); + [global::ProtoBuf.ProtoMember(2, IsRequired = false, Name=@"want_y", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + [global::System.ComponentModel.DefaultValue(default(int))] + public int want_y + { + get { return _want_y; } + set { _want_y = value; } + } + private global::ProtoBuf.IExtension extensionObject; + global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) + { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } + } + + [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"MapRequest")] + public partial class MapRequest : global::ProtoBuf.IExtensible + { + public MapRequest() {} + + + private string _save_folder = ""; + [global::ProtoBuf.ProtoMember(1, IsRequired = false, Name=@"save_folder", DataFormat = global::ProtoBuf.DataFormat.Default)] + [global::System.ComponentModel.DefaultValue("")] + public string save_folder + { + get { return _save_folder; } + set { _save_folder = value; } + } + private global::ProtoBuf.IExtension extensionObject; + global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) + { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } + } + + [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"MapReply")] + public partial class MapReply : global::ProtoBuf.IExtensible + { + public MapReply() {} + + private bool _available; + [global::ProtoBuf.ProtoMember(1, IsRequired = true, Name=@"available", DataFormat = global::ProtoBuf.DataFormat.Default)] + public bool available + { + get { return _available; } + set { _available = value; } + } + + private int _region_x = default(int); + [global::ProtoBuf.ProtoMember(2, IsRequired = false, Name=@"region_x", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + [global::System.ComponentModel.DefaultValue(default(int))] + public int region_x + { + get { return _region_x; } + set { _region_x = value; } + } + + private int _region_y = default(int); + [global::ProtoBuf.ProtoMember(3, IsRequired = false, Name=@"region_y", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + [global::System.ComponentModel.DefaultValue(default(int))] + public int region_y + { + get { return _region_y; } + set { _region_y = value; } + } + + private int _region_size_x = default(int); + [global::ProtoBuf.ProtoMember(4, IsRequired = false, Name=@"region_size_x", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + [global::System.ComponentModel.DefaultValue(default(int))] + public int region_size_x + { + get { return _region_size_x; } + set { _region_size_x = value; } + } + + private int _region_size_y = default(int); + [global::ProtoBuf.ProtoMember(5, IsRequired = false, Name=@"region_size_y", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + [global::System.ComponentModel.DefaultValue(default(int))] + public int region_size_y + { + get { return _region_size_y; } + set { _region_size_y = value; } + } + + private int _current_year = default(int); + [global::ProtoBuf.ProtoMember(6, IsRequired = false, Name=@"current_year", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + [global::System.ComponentModel.DefaultValue(default(int))] + public int current_year + { + get { return _current_year; } + set { _current_year = value; } + } + + private int _current_season = default(int); + [global::ProtoBuf.ProtoMember(7, IsRequired = false, Name=@"current_season", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + [global::System.ComponentModel.DefaultValue(default(int))] + public int current_season + { + get { return _current_season; } + set { _current_season = value; } + } + private global::ProtoBuf.IExtension extensionObject; + global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) + { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } + } + + [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"RawNames")] + public partial class RawNames : global::ProtoBuf.IExtensible + { + public RawNames() {} + + private bool _available; + [global::ProtoBuf.ProtoMember(1, IsRequired = true, Name=@"available", DataFormat = global::ProtoBuf.DataFormat.Default)] + public bool available + { + get { return _available; } + set { _available = value; } + } + private readonly global::System.Collections.Generic.List _inorganic = new global::System.Collections.Generic.List(); + [global::ProtoBuf.ProtoMember(2, Name=@"inorganic", DataFormat = global::ProtoBuf.DataFormat.Default)] + public global::System.Collections.Generic.List inorganic + { + get { return _inorganic; } + } + + private readonly global::System.Collections.Generic.List _organic = new global::System.Collections.Generic.List(); + [global::ProtoBuf.ProtoMember(3, Name=@"organic", DataFormat = global::ProtoBuf.DataFormat.Default)] + public global::System.Collections.Generic.List organic + { + get { return _organic; } + } + + private global::ProtoBuf.IExtension extensionObject; + global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) + { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } + } + + [global::ProtoBuf.ProtoContract(Name=@"BasicMaterial")] + public enum BasicMaterial + { + + [global::ProtoBuf.ProtoEnum(Name=@"AIR", Value=0)] + AIR = 0, + + [global::ProtoBuf.ProtoEnum(Name=@"OTHER", Value=1)] + OTHER = 1, + + [global::ProtoBuf.ProtoEnum(Name=@"INORGANIC", Value=2)] + INORGANIC = 2, + + [global::ProtoBuf.ProtoEnum(Name=@"LIQUID", Value=3)] + LIQUID = 3, + + [global::ProtoBuf.ProtoEnum(Name=@"PLANT", Value=4)] + PLANT = 4, + + [global::ProtoBuf.ProtoEnum(Name=@"WOOD", Value=5)] + WOOD = 5 + } + + [global::ProtoBuf.ProtoContract(Name=@"LiquidType")] + public enum LiquidType + { + + [global::ProtoBuf.ProtoEnum(Name=@"ICE", Value=0)] + ICE = 0, + + [global::ProtoBuf.ProtoEnum(Name=@"WATER", Value=1)] + WATER = 1, + + [global::ProtoBuf.ProtoEnum(Name=@"MAGMA", Value=2)] + MAGMA = 2 + } + + [global::ProtoBuf.ProtoContract(Name=@"BasicShape")] + public enum BasicShape + { + + [global::ProtoBuf.ProtoEnum(Name=@"NONE", Value=0)] + NONE = 0, + + [global::ProtoBuf.ProtoEnum(Name=@"OPEN", Value=1)] + OPEN = 1, + + [global::ProtoBuf.ProtoEnum(Name=@"WALL", Value=3)] + WALL = 3, + + [global::ProtoBuf.ProtoEnum(Name=@"FLOOR", Value=4)] + FLOOR = 4 + } + +} \ No newline at end of file diff --git a/clients/unity/simple_sample/Assets/Editor/MapBlockEditor.cs b/clients/unity/simple_sample/Assets/Editor/MapBlockEditor.cs new file mode 100644 index 000000000..c4d5c6a1a --- /dev/null +++ b/clients/unity/simple_sample/Assets/Editor/MapBlockEditor.cs @@ -0,0 +1,104 @@ +using isoworldremote; +using UnityEditor; +using UnityEngine; +using System; + +[CustomEditor(typeof(MapBlock))] +[CanEditMultipleObjects] +public class MapBlockEditor : Editor +{ + static Color32 selectedColor = Color.white; + static BasicShape selectedShape = BasicShape.WALL; + + public override void OnInspectorGUI() + { + MapBlock[] targetBlocks = Array.ConvertAll(targets, element => (MapBlock)element); + if(targets.Length == 1) + EditorGUILayout.LabelField(targets.Length + " Map Block selected."); + else + EditorGUILayout.LabelField(targets.Length + " Map Blocks selected."); + + selectedColor = EditorGUILayout.ColorField("Material Color", selectedColor); + selectedShape = (BasicShape)EditorGUILayout.EnumPopup("Terrain Shape ", selectedShape); + EditorGUILayout.BeginVertical(); + DFHack.DFCoord2d tempCoord = new DFHack.DFCoord2d(); + for (int i = 0; i < 16; i++) + { + EditorGUILayout.BeginHorizontal(); + for (int j = 0; j < 16; j++) + { + tempCoord.x = j; + tempCoord.y = i; + Color currentColor = targetBlocks[0].GetColor(tempCoord); + for (int index = 1; index < targetBlocks.Length; index++) + { + if (currentColor != targetBlocks[index].GetColor(tempCoord)) + { + currentColor = Color.white; + break; + } + } + currentColor.a = 1.0f; + GUI.color = currentColor; + string buttonIcon = "\u00A0"; + BasicShape tile = targetBlocks[0].GetSingleTile(tempCoord); + for (int index = 1; index < targetBlocks.Length; index++) + { + if (tile != targetBlocks[index].GetSingleTile(tempCoord)) + { + tile = BasicShape.NONE; + break; + } + + } + switch (tile) + { + case BasicShape.WALL: + buttonIcon = "â–“"; + break; + case BasicShape.FLOOR: + buttonIcon = "+"; + break; + case BasicShape.NONE: + buttonIcon = "?"; + break; + case BasicShape.OPEN: + buttonIcon = "\u00A0"; + break; + default: + buttonIcon = "?"; + break; + } + if (GUILayout.Button(buttonIcon)) + { + for (int index = 0; index < targetBlocks.Length; index++) + { + targetBlocks[index].SetSingleTile(tempCoord, selectedShape); + targetBlocks[index].SetColor(tempCoord, selectedColor); + targetBlocks[index].Regenerate(); + EditorUtility.SetDirty(targetBlocks[index]); + } + } + } + EditorGUILayout.EndHorizontal(); + } + EditorGUILayout.EndVertical(); + GUI.color = Color.white; + if (GUILayout.Button("Fill")) + { + for (int index = 0; index < targetBlocks.Length; index++) + { + for (int i = 0; i < 16; i++) + for (int j = 0; j < 16; j++) + { + DFHack.DFCoord2d here = new DFHack.DFCoord2d(j, i); + targetBlocks[index].SetSingleTile(here, selectedShape); + targetBlocks[index].SetColor(here, selectedColor); + + } + targetBlocks[index].Regenerate(); + EditorUtility.SetDirty(targetBlocks[index]); + } + } + } +} diff --git a/clients/unity/simple_sample/Assets/GameWindow.cs b/clients/unity/simple_sample/Assets/GameWindow.cs new file mode 100644 index 000000000..1760ca4de --- /dev/null +++ b/clients/unity/simple_sample/Assets/GameWindow.cs @@ -0,0 +1,57 @@ +using UnityEngine; +using System.Collections; + +public class GameWindow : MonoBehaviour +{ + public int viewPortWidth = 80; + public int viewPortHeight = 25; + public float verticalShift; + public float viewDistance = 5; + float n, f, r, l, t, b; + Matrix4x4 mat = new Matrix4x4(); + // Use this for initialization + void Start() + { + + } + + // Update is called once per frame + void Update() + { + float screenAspect = (float)Screen.width / (float)Screen.height; + float viewportAspect = (float)viewPortWidth / (float)viewPortHeight; + + float fraction = screenAspect / viewportAspect; + + float height = (viewPortHeight / 2.0f) / Mathf.Sin((camera.fov / 2) * Mathf.Deg2Rad); + transform.localPosition = new Vector3(0, height, -verticalShift); + + camera.nearClipPlane = height - 1.0001f; + camera.farClipPlane = height + viewDistance; + RenderSettings.fogStartDistance = camera.nearClipPlane; + RenderSettings.fogEndDistance = camera.farClipPlane; + if (fraction > 1.0f) //If the screen is wider than the DF Viewport + { + camera.rect = new Rect(0.5f - ((1.0f / fraction) / 2.0f), 0.0f, 1.0f / fraction, 1.0f); + } + else //If the DF Viewport is wider. + { + camera.rect = new Rect(0.0f, 0.5f - (fraction / 2.0f), 1.0f, fraction); + } + //make a custom camera matrix, rather than use the inbuilt one. + n = camera.nearClipPlane; + f = camera.farClipPlane; + r = viewPortWidth / 2.0f; + l = -viewPortWidth / 2.0f; + t = verticalShift + (viewPortHeight / 2.0f); + b = verticalShift - (viewPortHeight / 2.0f); + + + mat[0, 0] = 2 * n / (r - l); mat[1, 0] = 0; mat[2, 0] = 0; mat[3, 0] = 0; + mat[0, 1] = 0; mat[1, 1] = 2 * n / (t - b); mat[2, 1] = 0; mat[3, 1] = 0; + mat[0, 2] = (r + l) / (r - l); mat[1, 2] = (t + b) / (t - b); mat[2, 2] = -(f + n) / (f - n); mat[3, 2] = -1; + mat[0, 3] = 0; mat[1, 3] = 0; mat[2, 3] = -2 * f * n / (f - n); ; mat[3, 3] = 0; + + camera.projectionMatrix = mat; + } +} diff --git a/clients/unity/simple_sample/Assets/HUDFPS.cs b/clients/unity/simple_sample/Assets/HUDFPS.cs new file mode 100644 index 000000000..88fdd3755 --- /dev/null +++ b/clients/unity/simple_sample/Assets/HUDFPS.cs @@ -0,0 +1,79 @@ +using UnityEngine; +using System.Collections; + +[AddComponentMenu("Utilities/HUDFPS")] +public class HUDFPS : MonoBehaviour +{ + // Attach this to any object to make a frames/second indicator. + // + // It calculates frames/second over each updateInterval, + // so the display does not keep changing wildly. + // + // It is also fairly accurate at very low FPS counts (<10). + // We do this not by simply counting frames per interval, but + // by accumulating FPS for each frame. This way we end up with + // corstartRect overall FPS even if the interval renders something like + // 5.5 frames. + + public Rect startRect = new Rect(10, 10, 75, 50); // The rect the window is initially displayed at. + public bool updateColor = true; // Do you want the color to change if the FPS gets low + public bool allowDrag = true; // Do you want to allow the dragging of the FPS window + public float frequency = 0.5F; // The update frequency of the fps + public int nbDecimal = 1; // How many decimal do you want to display + + private float accum = 0f; // FPS accumulated over the interval + private int frames = 0; // Frames drawn over the interval + private Color color = Color.white; // The color of the GUI, depending of the FPS ( R < 10, Y < 30, G >= 30 ) + private string sFPS = ""; // The fps formatted into a string. + private GUIStyle style; // The style the text will be displayed at, based en defaultSkin.label. + + void Start() + { + StartCoroutine(FPS()); + } + + void Update() + { + accum += Time.timeScale / Time.deltaTime; + ++frames; + } + + IEnumerator FPS() + { + // Infinite loop executed every "frenquency" secondes. + while (true) + { + // Update the FPS + float fps = accum / frames; + sFPS = fps.ToString("f" + Mathf.Clamp(nbDecimal, 0, 10)); + + //Update the color + color = (fps >= 30) ? Color.green : ((fps > 10) ? Color.red : Color.yellow); + + accum = 0.0F; + frames = 0; + + yield return new WaitForSeconds(frequency); + } + } + + void OnGUI() + { + // Copy the default label skin, change the color and the alignement + if (style == null) + { + style = new GUIStyle(GUI.skin.label); + style.normal.textColor = Color.white; + style.alignment = TextAnchor.MiddleCenter; + } + + GUI.color = updateColor ? color : Color.white; + startRect = GUI.Window(0, startRect, DoMyWindow, ""); + } + + void DoMyWindow(int windowID) + { + GUI.Label(new Rect(0, 0, startRect.width, startRect.height), sFPS + " FPS", style); + if (allowDrag) GUI.DragWindow(new Rect(0, 0, Screen.width, Screen.height)); + } +} \ No newline at end of file diff --git a/clients/unity/simple_sample/Assets/MapGen/GameMap.cs b/clients/unity/simple_sample/Assets/MapGen/GameMap.cs new file mode 100644 index 000000000..8f7bc1ffc --- /dev/null +++ b/clients/unity/simple_sample/Assets/MapGen/GameMap.cs @@ -0,0 +1,15 @@ +using UnityEngine; +using System.Collections; + +public class GameMap : MonoBehaviour { + + // Use this for initialization + void Start () { + + } + + // Update is called once per frame + void Update () { + + } +} diff --git a/clients/unity/simple_sample/Assets/MapGen/MapBlock.cs b/clients/unity/simple_sample/Assets/MapGen/MapBlock.cs new file mode 100644 index 000000000..6d8f7014a --- /dev/null +++ b/clients/unity/simple_sample/Assets/MapGen/MapBlock.cs @@ -0,0 +1,262 @@ +using DFHack; +using System.Collections.Generic; +using UnityEngine; +using isoworldremote; + +public class MapBlock : MonoBehaviour +{ + public static float floorHeight = 0.1f; + DFCoord coordinates; + GameMap parent; + + [SerializeField] + BasicShape[] terrain = new BasicShape[256]; + [SerializeField] + Color32[] colors = new Color32[256]; + + List finalVertices = new List(); + List finalFaces = new List(); + List finalVertexColors = new List(); + List finalUVs = new List(); + + public enum Openness + { + air, + mixed, + stone + } + Openness openness; + + public void SetOpenness() + { + int air = 0; + int solid = 0; + for (int x = 0; x < 16; x++) + for (int y = 0; y < 16; y++) + { + if (terrain[y * 16 + x] == BasicShape.OPEN || terrain[y * 16 + x] == BasicShape.NONE) + air++; + else if (terrain[y * 16 + x] == BasicShape.WALL) + solid++; + } + if (air == 256) + openness = Openness.air; + else if (solid == 256) + openness = Openness.stone; + else openness = Openness.mixed; + } + + public Openness GetOpenness() + { + return openness; + } + + public Color32 GetColor(DFCoord2d position) + { + return colors[position.x + position.y * 16]; + } + + public void SetColor(DFCoord2d position, Color32 input) + { + colors[position.x + position.y * 16] = input; + } + + public void SetSingleTile(DFCoord2d position, BasicShape tile) + { + terrain[position.x + position.y * 16] = tile; + SetOpenness(); + } + + public BasicShape GetSingleTile(DFCoord2d position) + { + if (position.x >= 0 && position.x < 16 && position.y >= 0 && position.y < 16) + return terrain[position.x + position.y * 16]; + else + return BasicShape.NONE; + } + + public void Regenerate() + { + finalVertices.Clear(); + finalFaces.Clear(); + finalVertexColors.Clear(); + finalUVs.Clear(); + + if (openness == Openness.air) + { + } + else + { + for (int i = 0; i < 16; i++) + for (int j = 0; j < 16; j++) + { + DFCoord2d here = new DFCoord2d(i, j); + switch (GetSingleTile(here)) + { + case BasicShape.WALL: + AddTopFace(here, 1.0f); + break; + case BasicShape.FLOOR: + AddTopFace(here, floorHeight); + break; + } + AddSideFace(here, FaceDirection.North); + AddSideFace(here, FaceDirection.South); + AddSideFace(here, FaceDirection.East); + AddSideFace(here, FaceDirection.West); + } + } + MeshFilter mf = GetComponent(); + Mesh mesh = new Mesh(); + mf.mesh = mesh; + mesh.vertices = finalVertices.ToArray(); + mesh.uv = finalUVs.ToArray(); + mesh.colors32 = finalVertexColors.ToArray(); + mesh.triangles = finalFaces.ToArray(); + mesh.RecalculateBounds(); + mesh.RecalculateNormals(); + } + + enum FaceDirection + { + Up, + Down, + North, + South, + East, + West + } + + BasicShape GetRelativeTile(DFCoord2d position, FaceDirection direction) + { + DFCoord2d relativePosition = new DFCoord2d(position.x, position.y); + switch (direction) + { + case FaceDirection.North: + relativePosition.y--; + break; + case FaceDirection.South: + relativePosition.y++; + break; + case FaceDirection.East: + relativePosition.x++; + break; + case FaceDirection.West: + relativePosition.x--; + break; + } + return GetSingleTile(relativePosition); + } + + void AddSideFace(DFCoord2d position, FaceDirection direction) + { + float currentFloorHeight = -0.5f; + float adjacentFloorHeight = -0.5f; + switch (GetSingleTile(position)) + { + case BasicShape.WALL: + currentFloorHeight = 0.5f; + break; + case BasicShape.FLOOR: + currentFloorHeight = floorHeight - 0.5f; + break; + default: + break; + } + switch (GetRelativeTile(position, direction)) + { + case BasicShape.WALL: + adjacentFloorHeight = 0.5f; + break; + case BasicShape.FLOOR: + adjacentFloorHeight = floorHeight - 0.5f; + break; + default: + break; + } + if (currentFloorHeight <= adjacentFloorHeight) + return; + int startindex = finalVertices.Count; + int uvPos = 0; + switch (direction) + { + case FaceDirection.North: + finalVertices.Add(new Vector3(position.x + 0.5f, currentFloorHeight, -(position.y - 0.5f))); + finalVertices.Add(new Vector3(position.x - 0.5f, currentFloorHeight, -(position.y - 0.5f))); + finalVertices.Add(new Vector3(position.x + 0.5f, adjacentFloorHeight, -(position.y - 0.5f))); + finalVertices.Add(new Vector3(position.x - 0.5f, adjacentFloorHeight, -(position.y - 0.5f))); + uvPos = position.x; + break; + case FaceDirection.South: + finalVertices.Add(new Vector3(position.x - 0.5f, currentFloorHeight, -(position.y + 0.5f))); + finalVertices.Add(new Vector3(position.x + 0.5f, currentFloorHeight, -(position.y + 0.5f))); + finalVertices.Add(new Vector3(position.x - 0.5f, adjacentFloorHeight, -(position.y + 0.5f))); + finalVertices.Add(new Vector3(position.x + 0.5f, adjacentFloorHeight, -(position.y + 0.5f))); + uvPos = 16 - position.x; + break; + case FaceDirection.East: + finalVertices.Add(new Vector3(position.x + 0.5f, currentFloorHeight, -(position.y + 0.5f))); + finalVertices.Add(new Vector3(position.x + 0.5f, currentFloorHeight, -(position.y - 0.5f))); + finalVertices.Add(new Vector3(position.x + 0.5f, adjacentFloorHeight, -(position.y + 0.5f))); + finalVertices.Add(new Vector3(position.x + 0.5f, adjacentFloorHeight, -(position.y - 0.5f))); + uvPos = position.y; + break; + case FaceDirection.West: + finalVertices.Add(new Vector3(position.x - 0.5f, currentFloorHeight, -(position.y - 0.5f))); + finalVertices.Add(new Vector3(position.x - 0.5f, currentFloorHeight, -(position.y + 0.5f))); + finalVertices.Add(new Vector3(position.x - 0.5f, adjacentFloorHeight, -(position.y - 0.5f))); + finalVertices.Add(new Vector3(position.x - 0.5f, adjacentFloorHeight, -(position.y + 0.5f))); + uvPos = 16 - position.y; + break; + default: + break; + } + finalUVs.Add(new Vector2(-(float)(uvPos + 1) / 16.0f, -(float)(0) / 16.0f)); + finalUVs.Add(new Vector2(-(float)(uvPos) / 16.0f, -(float)(0) / 16.0f)); + finalUVs.Add(new Vector2(-(float)(uvPos + 1) / 16.0f, -(float)(0 + 1) / 16.0f)); + finalUVs.Add(new Vector2(-(float)(uvPos) / 16.0f, -(float)(0 + 1) / 16.0f)); + + finalVertexColors.Add(GetColor(position)); + finalVertexColors.Add(GetColor(position)); + finalVertexColors.Add(GetColor(position)); + finalVertexColors.Add(GetColor(position)); + + finalFaces.Add(startindex); + finalFaces.Add(startindex + 1); + finalFaces.Add(startindex + 2); + + finalFaces.Add(startindex + 1); + finalFaces.Add(startindex + 3); + finalFaces.Add(startindex + 2); + } + + void AddTopFace(DFCoord2d position, float height) + { + height -= 0.5f; + //Todo: Weld vertices that should be welded + //On second though, not with vertex colors there. + int startindex = finalVertices.Count; + finalVertices.Add(new Vector3(position.x - 0.5f, height, -(position.y - 0.5f))); + finalVertices.Add(new Vector3(position.x + 0.5f, height, -(position.y - 0.5f))); + finalVertices.Add(new Vector3(position.x - 0.5f, height, -(position.y + 0.5f))); + finalVertices.Add(new Vector3(position.x + 0.5f, height, -(position.y + 0.5f))); + + finalUVs.Add(new Vector2((float)(position.x) / 16.0f, -(float)(position.y) / 16.0f)); + finalUVs.Add(new Vector2((float)(position.x + 1) / 16.0f, -(float)(position.y) / 16.0f)); + finalUVs.Add(new Vector2((float)(position.x) / 16.0f, -(float)(position.y + 1) / 16.0f)); + finalUVs.Add(new Vector2((float)(position.x + 1) / 16.0f, -(float)(position.y + 1) / 16.0f)); + + finalVertexColors.Add(GetColor(position)); + finalVertexColors.Add(GetColor(position)); + finalVertexColors.Add(GetColor(position)); + finalVertexColors.Add(GetColor(position)); + + finalFaces.Add(startindex); + finalFaces.Add(startindex + 1); + finalFaces.Add(startindex + 2); + + finalFaces.Add(startindex + 1); + finalFaces.Add(startindex + 3); + finalFaces.Add(startindex + 2); + } +} diff --git a/clients/unity/simple_sample/Assets/RemoteClient/RemoteClient.cs b/clients/unity/simple_sample/Assets/RemoteClient/RemoteClient.cs index f23faa761..dd315310f 100644 --- a/clients/unity/simple_sample/Assets/RemoteClient/RemoteClient.cs +++ b/clients/unity/simple_sample/Assets/RemoteClient/RemoteClient.cs @@ -58,8 +58,8 @@ namespace DFHack class RPCHandshakeHeader { - public string magic; - public int version; + //public string magic; + //public int version; public static string REQUEST_MAGIC = "DFHack?\n"; public static string RESPONSE_MAGIC = "DFHack!\n"; @@ -93,6 +93,136 @@ namespace DFHack } } + // simple function to store + struct DFCoord + { + public int x, y, z; + //convert + UnityEngine.Vector3 ToVector3() + { + return new UnityEngine.Vector3(x + 0.5f, z + 0.5f, -y - 0.5f); + } + static DFCoord FromVector3(UnityEngine.Vector3 input) + { + DFCoord output = new DFCoord((int)input.x, (int)(-input.z), (int)input.y); + return output; + } + + DFCoord(int inx, int iny, int inz) + { + x = inx; + y = iny; + z = inz; + } + + public bool isValid() + { + return x != -30000; + } + public void clear() + { + x = y = z = -30000; + } + + public static bool operator <(DFCoord a, DFCoord b) + { + if (a.x != b.x) return (a.x < b.x); + if (a.y != b.y) return (a.y < b.y); + return a.z < b.z; + } + public static bool operator >(DFCoord a, DFCoord b) + { + if (a.x != b.x) return (a.x > b.x); + if (a.y != b.y) return (a.y > b.y); + return a.z > b.z; + } + public static DFCoord operator +(DFCoord a, DFCoord b) + { + return new DFCoord(a.x + b.x, a.y + b.y, a.z + b.z); + } + public static DFCoord operator -(DFCoord a, DFCoord b) + { + return new DFCoord(a.x - b.x, a.y - b.y, a.z - b.z); + } + public static DFCoord operator /(DFCoord a, int number) + { + return new DFCoord((a.x < 0 ? a.x - number : a.x) / number, (a.y < 0 ? a.y - number : a.y) / number, a.z); + } + public static DFCoord operator *(DFCoord a, int number) + { + return new DFCoord(a.x * number, a.y * number, a.z); + } + public static DFCoord operator %(DFCoord a, int number) + { + return new DFCoord((a.x + number) % number, (a.y + number) % number, a.z); + } + public static DFCoord operator -(DFCoord a, int number) + { + return new DFCoord(a.x, a.y, a.z - number); + } + public static DFCoord operator +(DFCoord a, int number) + { + return new DFCoord(a.x, a.y, a.z + number); + } + } + public struct DFCoord2d + { + public int x; + public int y; + + public DFCoord2d(int _x, int _y) + { + x = _x; + y = _y; + } + + public bool isValid() + { + return x != -30000; + } + public void clear() + { + x = y = -30000; + } + + public static bool operator <(DFCoord2d a, DFCoord2d b) + { + if (a.x != b.x) return (a.x < b.x); + return a.y < b.y; + } + public static bool operator >(DFCoord2d a, DFCoord2d b) + { + if (a.x != b.x) return (a.x > b.x); + return a.y > b.y; + } + + public static DFCoord2d operator +(DFCoord2d a, DFCoord2d b) + { + return new DFCoord2d(a.x + b.x, a.y + b.y); + } + public static DFCoord2d operator -(DFCoord2d a, DFCoord2d b) + { + return new DFCoord2d(a.x - b.x, a.y - b.y); + } + + + public static DFCoord2d operator /(DFCoord2d a, int number) + { + return new DFCoord2d((a.x < 0 ? a.x - number : a.x) / number, (a.y < 0 ? a.y - number : a.y) / number); + } + public static DFCoord2d operator *(DFCoord2d a, int number) + { + return new DFCoord2d(a.x * number, a.y * number); + } + public static DFCoord2d operator %(DFCoord2d a, int number) + { + return new DFCoord2d((a.x + number) % number, (a.y + number) % number); + } + public static DFCoord2d operator &(DFCoord2d a, int number) + { + return new DFCoord2d(a.x & number, a.y & number); + } + } /* Protocol description: * * 1. Handshake @@ -323,7 +453,7 @@ namespace DFHack this.proto, this.name, header.size); return command_result.CR_LINK_FAILURE; } - + byte[] buf = new byte[header.size]; if (!RemoteClient.readFullBuffer(p_client.socket, buf, header.size)) @@ -361,7 +491,6 @@ namespace DFHack break; } } - return command_result.CR_OK; } @@ -671,7 +800,6 @@ namespace DFHack if (!suspend_ready) { suspend_ready = true; - suspend_call.bind(this, "CoreSuspend"); resume_call.bind(this, "CoreResume"); } @@ -701,7 +829,8 @@ namespace DFHack RemoteFunction runcmd_call; bool suspend_ready; - RemoteFunction suspend_call, resume_call; + RemoteFunction suspend_call = new RemoteFunction(); + RemoteFunction resume_call = new RemoteFunction(); } class RemoteSuspender diff --git a/clients/unity/simple_sample/Assets/RemoteClient/Tools.cs b/clients/unity/simple_sample/Assets/RemoteClient/Tools.cs index bc16a1221..d39110ba9 100644 --- a/clients/unity/simple_sample/Assets/RemoteClient/Tools.cs +++ b/clients/unity/simple_sample/Assets/RemoteClient/Tools.cs @@ -468,7 +468,7 @@ namespace AT.MIN #endregion #region s - string case 's': // string - string t = "{0" + ( fieldLength != int.MinValue ? "," + ( flagLeft2Right ? "-" : String.Empty ) + fieldLength.ToString() : String.Empty ) + ":s}"; + //string t = "{0" + ( fieldLength != int.MinValue ? "," + ( flagLeft2Right ? "-" : String.Empty ) + fieldLength.ToString() : String.Empty ) + ":s}"; w = o.ToString(); if ( fieldPrecision >= 0 ) w = w.Substring( 0, fieldPrecision ); diff --git a/clients/unity/simple_sample/Assets/Start.unity b/clients/unity/simple_sample/Assets/Start.unity index b115f6ec5809ce741f03fbbc96f53b79a31b0850..71c6310525a2ed7a272d3b212a3160c51e00771e 100644 GIT binary patch literal 89520 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 H%)tKvgDAuY delta 324 zcmdn6oApMrA_Ifod-9a$m`3v zIe_gW@;1|Pm|%A-e2a)j(Jj(6Y}^rKg-o)WMrHE zG?3AKx()); - } + if (!remoteClient.connect()) + Debug.LogError("Could not connect"); + else + { + remoteClient.run_command("ls", new List()); + } } // Update is called once per frame diff --git a/clients/unity/simple_sample/Assets/UV Test.mat b/clients/unity/simple_sample/Assets/UV Test.mat new file mode 100644 index 0000000000000000000000000000000000000000..4dd4bad68b9391ad4be947443e6c21c0e6a085bd GIT binary patch literal 4512 zcmeHLOLH7G5S9}j!QmB1cw;ua5?%(|Ng%{=Y$x8t5R)-YmLU5LF+Sz?W);nsXukMKD9 z(z}<%V~je$p;_X*EWjMZ`GcMr9VNTO#8+})`9@?2qjGy+(^`&%{l%Kl5*A+QzH0d@ zB4*LIin*C348%sWdZ#b7=t?8G_qgq>AefcyzU(RuR;N#H>vJsT!+tic+??$*Lgu*m-8izmt)Dx3Bo{JZqSQWU}nJYbLb>t zOdgK)d|~H!tKnED2?Hr}BE7l>*mDpcaW{#~sHM}P(q^>XSIU49xu?2CXQV78FW9km zyX1C@4&;!~chvqyvS(2*7O2A}^OBzec?uEtvhSzRhcYS(3beiABML7~nHe`1uJK-^ zGs7$TY7LGAiVy-Rku+Do#AH&eV|gNM~zyH2p~L1?;wzo5^A=sgF|1z69|th?O8%q>iSd&v zdBOAJCQz;9#Q?%`UDPm+!zB+?sKOF{HH}kk2|wq9a!W@&=ktW&e1RoQi0})rk+^)J zR|)?VT_lXit(QXx|BS&0a15&xeldWlC;vHNT=J6$zvTIG6Q~lt96&IOx390Sxd#W% zrpq2shz9R5yE2;f70*6Hc8Im_vi%D8xRe{*vi2ReuTHc}wyy>3=)$xb#~V<^Lu%ku z!iBXI;|Gl&|NQml7e9CYzPNtj^7nY!(Tn1dQzw^Z|JZsUZeN=F<-4ZsWz+O$%D|L? zDFagm{@)Dnm;AlP9YycsI03}UCMS&VS-jJ=w`7#idn`_Y{5QOO<#Yhyvcj14`-9;Y zeRGsj#o$Y|eNE9DDLE=JPy)D{(Qe;Voc#xfoXMY&QOu`Pkry3oIbBxprP`+d6l5IB z{ffJ4Ow0>k$@G;QB~hZXOo-oqm|NkT-FRUB`e_-*8+d8+xlT%%zx8ST3{|JJ1LGvW Q!ag?!QHFm$T(@`s7i-87i2wiq literal 0 HcmV?d00001 diff --git a/clients/unity/simple_sample/Assets/UVTest.png b/clients/unity/simple_sample/Assets/UVTest.png new file mode 100644 index 0000000000000000000000000000000000000000..2401acdd7cef113f0a0ac97ffd986ecd0f907b0c GIT binary patch literal 298948 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 ZL?$_taimj^L;ih5T}4~DR`K<_{{xIS!JPmA literal 0 HcmV?d00001 diff --git a/clients/unity/simple_sample/Assets/VertexColor.shader b/clients/unity/simple_sample/Assets/VertexColor.shader new file mode 100644 index 000000000..84ecf2413 --- /dev/null +++ b/clients/unity/simple_sample/Assets/VertexColor.shader @@ -0,0 +1,33 @@ +// Upgrade NOTE: replaced 'SeperateSpecular' with 'SeparateSpecular' + +Shader " Vertex Colored" { +Properties { + _Color ("Main Color", Color) = (1,1,1,1) + _SpecColor ("Spec Color", Color) = (1,1,1,1) + _Emission ("Emmisive Color", Color) = (0,0,0,0) + _Shininess ("Shininess", Range (0.01, 1)) = 0.7 + _MainTex ("Base (RGB)", 2D) = "white" {} +} + +SubShader { + Pass { + Material { + Shininess [_Shininess] + Specular [_SpecColor] + Emission [_Emission] + } + ColorMaterial AmbientAndDiffuse + Lighting On + SeparateSpecular On + SetTexture [_MainTex] { + Combine texture * primary, texture * primary + } + SetTexture [_MainTex] { + constantColor [_Color] + Combine previous * constant DOUBLE, previous * constant + } + } +} + +Fallback " VertexLit", 1 +} \ No newline at end of file diff --git a/clients/unity/simple_sample/Assets/grid.png b/clients/unity/simple_sample/Assets/grid.png new file mode 100644 index 0000000000000000000000000000000000000000..4fa59d48d6fd2c2739ed835a5e628c0d4d2e68df GIT binary patch literal 1615 zcmeAS@N?(olHy`uVBq!ia0y~yU<5K58911L)MWvCLlCbx$lZxy-8q?;Kn_c~qpu?a z!^VE@KZ&eBK4*bPWHAE+-(e7DJf6QI1t=(0;u=vBoS#-wo>-L15RjOeSEA?V8lq5U ztY@lcXkhTAXdwdw>po8x$B>G+x7RlE-f<9MacupzP_wvmy2E3iq==_$F27^={anB1 zhU9_$+57MN%YS*>x|dO;R{90+f)}?P@)=z3vsE!`{4%>B?Qn5><2{D1eY{`T0>0!f zFmG6t&x}XuKb{Ac-@o|Yzjtju)9CQKV{V-!*ST{ zIL|Pz*#G{Qx4C~M8EU49ub?adknFH$t~h5~dwKizujvdQBI6d|4>=@_qk&8yl_7=I rXdolPYBVLoORphZT$F#^f4~08VX0uB_NG8!dC%bK>gTe~DWM4f8(hlP literal 0 HcmV?d00001 diff --git a/clients/unity/simple_sample/Library/AnnotationManager b/clients/unity/simple_sample/Library/AnnotationManager index 2d1e3612dc4f93f1041b5718acac417dfa00bbdb..15eabbb4e6875d5ea182c0b4eba9c4c7029b8496 100644 GIT binary patch delta 533 zcmbQD@I{$}fq`W`1B2j~jU203xV|tlFi5h1@aBUo9^Ca33=9lFAutvJ(jdSL#4s^U zum}SK6Ox!U7BL4bVvbnEf}mnhJLLL_yEv4|amiowhR(HD@^ MftXsa?%0CF0iBl^lmGw# delta 46 ycmeyOJVk+nfq`W`1A~CbMvhf1Tp|n%43aD$y!jxDGxy{REW8~3hrZe{0>uI6?+Pyf diff --git a/clients/unity/simple_sample/Library/AssetVersioning.db b/clients/unity/simple_sample/Library/AssetVersioning.db new file mode 100644 index 0000000000000000000000000000000000000000..7c4c8d349fc98d4925958c66c97f22392314f046 GIT binary patch literal 14336 zcmeHN&2Jk;6rb@p-cA}vtq}4dLYW*wyuvPo98ifY5rS0(N~MNI;!Qyv+l4 z61ZJExL}X@MU7Dy7iL}NlLe!)v4Q(*k(8G29l7mZU<=pxluAjFrF2Pg?Vc2P*zpgC zq_vK1ugya)1|sj4N|kRnFmgSIpNCI6;3&)P2|ucXkvSEtO{Hq|NztgRuHybdtZuq^ zCS^fYGwn|i$&|=LLc2T+?KY=W@N)qO`DY#vvYKOqe!}hYbh7!F#F)JwDRE*4+!IHB z$KgS!REml+N*Aj}9!i%~K%?xlQ6dRTGb^PPUku*C5EKflaI4EB(D6;ZB()J9W zRA4Rkm~>c;dNvp*ZD%dN(*bjt=eO*T*J!MB&cU;5tsC zS|$ft^M<=lHaTxIt7aP3n2aTpnV%I(m2cKx7bbZNt<9tc`)rZIjh4!C%N6BKUm5|8 zz`P-_C=J&8f8N}#?bQfG2*~`8$twgOeQ5+V0`r3a!334{`G0;Kt}WFF3?rcT|1cuD zt`V3Y1oZ#^`SG>3R3k8qfXx4d{Ef(eyM?{a?a$ zgzJS53s&KGvQK^^KTQpQ3Ge2oD&u-y{$7ui*?7eqy?7_r%K&&QNDuE8Q6$R$_&LJQ z@n7U?@;Q1ot$lfE-!NA0uHzS75x8xj*CU^F~_b|W~GwPO2s--1dAaz!N?YNMiQRga>3oW10qeN&Dg| zzKFu3btJp^R_UqF8%{BPkG@&a=x&ffKO*{JMD?ry}K zRZbN#h16<=mgS!337Fw>au_*yu=ntw$@U(6)%;#LX;{i!c@9zL1D!M;z|8)wvLPv& z{l=&Ql2dBM6B8}+`jrzU#z-HXIC2z%oCT}b61{Rs4OH4)G*-4Z@MS&CRtlYXkg@X3 zBUvloIWcqP2TmhS%Px^TwF4xcU09$julN4?~9=X6pPudyhM9kw)OE2*~}f`F~eMOOMkC L%nSlWQpWgy*Hy*7 literal 0 HcmV?d00001 diff --git a/clients/unity/simple_sample/Library/EditorUserBuildSettings.asset b/clients/unity/simple_sample/Library/EditorUserBuildSettings.asset index 199deaca3dba820b9542ab34a0759f99cfcdc9f6..c7036fef2536acb8cb5e0a026752000a46d553e8 100644 GIT binary patch delta 17 YcmX@0a6n-Lj{qw-0|Nu=4r-t5SHl&78z$Y%s%aUcc(5Str_bK`vz zOHzw66LX5eVnskPE+7s`EiMU8F3Kz@0djxJHQqo|%`DU(Ue51eE0mV*i{Jh(SPi6lGR0FayPM6HCAb Jih@jl0sxpIB^Cex delta 37 pcmX@2*rC9|z`$(8z#zb}kwcf63&>-TU;*LHj?9O7CI>LH0RU@+1;_vZ diff --git a/clients/unity/simple_sample/Library/ScriptAssemblies/Assembly-CSharp-Editor.dll b/clients/unity/simple_sample/Library/ScriptAssemblies/Assembly-CSharp-Editor.dll new file mode 100644 index 0000000000000000000000000000000000000000..00da086644a8d9e1be186ba9d49063f8ed01f85c GIT binary patch literal 5632 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 literal 0 HcmV?d00001 diff --git a/clients/unity/simple_sample/Library/ScriptAssemblies/Assembly-CSharp.dll b/clients/unity/simple_sample/Library/ScriptAssemblies/Assembly-CSharp.dll index 6f0a04c8064bda98709c0e40245dd200b7e74ef0..9a5761e466229a606677693b7ffd70b9c235f847 100644 GIT binary patch literal 88064 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 IqbKYC0_Iv|PXGV_ literal 19136 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 NX}kLPg|A?S>e@ z!@C={JK?f7-ill8uqhtEw-PV+z9oRW;@RovSM8HdN}_=lqy^o|VFCXpw%+qH*3?^p+>gs99b=OW%GvJ4~AFC}KA|j+n}kb2UfILXNsN z5EF2~c*aUmXw6H`9EQC`MmyhFF1fC|APuqf=Fw-9)XH~oNkITSBy6g}0pVSjqM z@!UgXDQNod{wr$lX%bY_yIvz{cKEoSza38g5SPf@hWIM29| zs({&L|A_s(YJwS3DStvO16LV8sZ@Kw7}m(Ypi%UJM!lAq`M}H`y^uW8NnJ}5UP+t0zmE)6HZv(Xm+l1L zNYkwAX_{%9@sRVQ8RAPB;>R*H$4aIcrrzgepOKeeG7;7*6@)koy}bP0W_rP7!C3fP zv8Ta%8YkU5OG2EJO~aM%jBaRd8iTA70e_kKSeCXeWohQo>>zM8OWn7Ciu}Q7nB-T@ ze&7oGO|xIRYNz~Z4uloV7?Vd_6R^!@c)B ze)rsS?>*l=7^ltdKQOaq7`sY_DJx(Y<|o+i9JUU!Ui_hwVeUM`lb1f;+QZB`Zh^=? z#PUkqS!Vl-uKmY0kOMZ(+qJ7KUGLsovw3Ld^K3`yl7(o3KhSNDt{_FxDyv(f&nFIx zdG4=YI=;S6u{d74uIc-uUmVsi;B=2g^laL^>H4~wkfe+|D?h6s^F*SA0<# zJK1njbt|vz1=45Z%r+nXBrB=4Hu}u|dwsS$!)$oej(?^!KKoWxl>WiOZ<(V<%x66~ zD^@Rw_NZf4Jl=C7sg(YlEH3F9}nT;#cb3fkKKi8wH_$>T4b?;LG% z=DDBRA{-Z)d6Cm12a;zi-MSRxvaYB|SzHvDRhXj)C^(db9Eob%I_nuOWcbI;q_bX; zQ=DHI7$+}?%FEBp<%a>8MX2$So7lo;hIHCX$SpfdcB%Q;`<4$OJWLQV8)D^|xq&%F z`6c;9JKg&x;8ke-5=E=g9QZ8KM$P$QC=v zd?h~MoYH=62L_HP?6xn`HZy;)#AQ1Z3;S%TBZ_B_0Uzf;8VKxiKJ5PojW@}*SJN1Y z))gub$>Z`BxNG#ZL^&?ouwaH*h&C;X4GsMoo!BiZme`sQckYsK+cFz3` z5_>EvleJx;{)j`#hhnEiiEFE!aG@%3@Y3pU{C{Bzk{9_-ypg46Rd}R@cSLxZg*R4s zQG|&`c)R9hjD>v4h;fJv5oQ-*4gx_&K*vdwwMgIQ@cepKIHfsC>D^n1Ej^-?B9Ry> zxOwyDlMtZ2fLI~pDUaD7dGvH0!1Q$5Ud^bRw+k!ws_kA~^ij3co|ZlD=_ zkLlJLIHlf!cR5~X?ko}~!q8>!@3r@JlF%1{TE=QuLY)uwP4Vl2Lr2ZgXtj+r!YBq5he$E zU{LcWTpiYdUULq{``S^ig?Fp3!B9g#^qtaR|0<|eT`*ET3==0Oxc=qiQ!r4c<>c>F zy~pv4Cyg*#Gs^Wg}Ld`X}Z~_%-w4i?N z2Ar)n!r2o>(6Be)RLcZ3^o~R0r7<}9#uzjX8KJ(z2sN!kpu+yiH^!mi;waQpYMq28 zTyD+G&dktSb1!0`s^3Sbba3zY|x)G&Oo z9Yzj!fi~#^7)v{#U(p4FiVHCQ)AP`mbP-1LyFs7d3A&^n7%ypufy{2`%k1EE+vD1y zX?GJeB{f1@TpLvFsDjgMyb8`FG($x~1yF^C9Su;QSkLv3Z>xkeJDP!PBTyb!4%?I8 zhAd?}WGUKUN6Hl_JfMO!`4FUL^g~hZX-G_&f}E@_)S>bzPM(sc;dH33@=`q{O&eer zlCrk}qOQLWY|271krQkU#em`Y6od!nZJ816M(ipkxQLWz;)v0m2%UF2Ggzq_sk0 zQ-OmBVmBx1NW?3Q3>*4Zm+*24R{<#%q$$cA_TlYrW@PXZ9WIuv|E zLh#mvL3nTkY>eFwk&&ArJm`4{@xxo?9|E#fGF+)21pDDl!&|i0-xt=){NP1d2%!DO WCjs!p{P1rp7nwX1{}-v0fBY|GP0ir| delta 348 zcmXAlze@sP9LC=lucM&!ygTo_tE93)q~U}kEF8oi5H;xN5=3ALDw-8II!Kcg`M3s# z4UR>NgDp{8N)WV!(4gQDWYHhcYd!Gc`NFe&pJ((N$k63#jnv=HBFcP)bsQrZ!&Rk`Z$j14=?IbG+Q_#CIp zx`~qRoj6}I-uj5?Zrl26fE#q!^M6v|%Sd?AP0HcRE}=GSuoeVof&=gA$y<5Oh@zP^ zsTI9s7{jzlZJ5ub5#O6eE#pTdYoZ?IP}>$z$(B*c8C1kwE{sv0B|#3JgCGJ0gUZMj Ya@2udVITE14jYF7q>3gR;iCBR3pPM=VE_OC diff --git a/clients/unity/simple_sample/Library/guidmapper b/clients/unity/simple_sample/Library/guidmapper index ba300d255621e1d3e3b475ab2ac2897386666bab..65671f8fee1bcddce8fafd64edf7a9e9b79a3ee5 100644 GIT binary patch delta 697 zcmaE&d_{wUfq|)rfk7l>BS$V1R|pFO12Y(JZe(ia)ns6hWME+MWfB!J=GyN&lOf1j zZf%VlKTyoExHz?>SU0#1aOE8oMQmUfy089ovn=6W*vlXyipGgjf#bPqqL^j*kfCM-=#I6HtwBQdpRG%BB#U@J#ct`l76%|HujkJoRfdbFULD+3Lw;Ygu1u| z1Ov^RY#`VZ5dEd=^@`?M{(bSAO=cQCWfnmw1f_=X%)FHRa-iZF-2Lyfnxb50MI2@P a@jCb{k~+tt)VxIB{1jji15?@_K@9*cxAw;X delta 66 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 literal 0 HcmV?d00001 diff --git a/clients/unity/simple_sample/Library/metadata/36/364a32494f42e934bae30ff47badc45a b/clients/unity/simple_sample/Library/metadata/36/364a32494f42e934bae30ff47badc45a index c3fc1fc8752fbde35a71d838d25b7b3698c02fed..cf4a6fba4bb0506af26065bc0dab9a8cf984e538 100644 GIT binary patch delta 56 zcmeA?#n^j_k%NIja5Do#%Fm4)>jXJFgBTc!8Gv}QqLAq1D}s9%r8Z9#dTq|6ufMs* L%R_4Np%ixj>Aey4 delta 53 zcmeA@#n^d@k%NIja5Do#%GZq?>jXJlgBTc!8Gv}QqLAq1D}s9%B{okKdTqYB&dWn; I@`)5z0K1A2kpKVy diff --git a/clients/unity/simple_sample/Library/metadata/49/49176d7675a998345966feca21555311 b/clients/unity/simple_sample/Library/metadata/49/49176d7675a998345966feca21555311 new file mode 100644 index 0000000000000000000000000000000000000000..35b1bc928fa4bd08c924696ff972db7dd3750cce GIT binary patch literal 17905 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 ZVZYY)Jovp;$c|lh!hie2fAIvs{{ae|sLTKW literal 0 HcmV?d00001 diff --git a/clients/unity/simple_sample/Library/metadata/6e/6e1305e96d61f204f8229e0a0cb7f8c1 b/clients/unity/simple_sample/Library/metadata/6e/6e1305e96d61f204f8229e0a0cb7f8c1 new file mode 100644 index 0000000000000000000000000000000000000000..a5f934d8fa971d0a7529460c592ace99ccd300fe GIT binary patch literal 8921 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 literal 0 HcmV?d00001 diff --git a/clients/unity/simple_sample/Library/metadata/73/73b3c5754a89e43409dcf23866eb0484 b/clients/unity/simple_sample/Library/metadata/73/73b3c5754a89e43409dcf23866eb0484 index 201f2fb774da586f446d434d1abe8724deb53f2e..b2c18736e763f892ab2827680632a0d63e53f2f8 100644 GIT binary patch delta 2888 zcmb_dO>7%g5O#i4H=&8@v~^RbO~!>->p0%cPkX_MtBTO_qqagoZzZywZM9OoyIHS` z*A*v(DskX4XAnIAHw5yH3-ks^y>SID2&uPT%ZZuYx9hj*x-1AwQQpkXzVDmw&HMK0 zpJN~0A3vJOyt{W>@G)Xro&8T!NZxl{N{?#JNhW87L^l$J* z;j0NvgO1U*_jS14HCwJ>nc!N`aV(B7F;J8r`@S|K^O;#h65xsm{lW7pv|(Fj;w*Y3Ko4a`6!6@^+W z8zwzasX;$dszKZ@i$oB5_;C3&t}LF!OSh(r;rpzNVbZI?f)olCeaw{#n>|9Kr;=u@ zk>_WT|@r*i)b0v782gPluZm!V}-@2K{->zkAcP(QNTKjs#QOc6| z_oOugF+79u*1--nz?^;B-~X>0$CfNxcN%m?u%(15HC97ypvgVp=gX7l8miBtsrJg? z=x*0BLE+pMPzt}7lAaC|(LEUdEubLw6+VN|T{@ zOwDe)sXKJa#fIFLINCM1M7{Lr1_pKTGKXc*L`=7XyWWDJkguv#NOLeOBuQj3MlxI( z&F~rFS0WnBLXOg5Esw^!{EQkE0ak|P2-fdD=|S3VV@Dr9kMlAEQr#c0V6;M&QwbUy zrXFN77dM;VvvEgUu9^mEuQ!|n;lB+$res(HyMSSR-oej-TSZBBwna+#RjfiY- zV-JSLM?qTaqfY`ETWE8_p4r%j7?H94dyK%`LX5!3L?0L8mz?&Fnu^Xm39u+n7M)0v zg~^lk9Gqx;6LHq12^Khq{i`f}0Y8|T=2_Vs-B#pY0bG2T-;1OD-wq}#@*IkheI-#; z;uKkU*|dfhmJ%%TuOzT~984T@V9zN$EG30fXrW0I68bGg-pO|+j0h}0xVq>r;SX=m z;_>?A;MeUhk4%V(z)uRtBU9lfrU fYxuxEL+Qd1NAGmoI{vONBvsuggw6AWUb0V~Ajdx0 zK7@VpbSZ(!RW;n3w@A%l-pr(zFF(1!oQFjL2sRh`?qHkzAc$r1IVJYV@7;tZzjtSy qY^<%Y*)imu#$>hvzRlLPSDATr6pB)dOLJ4>lM{1tHm`5I#s~nLtuXHZ diff --git a/clients/unity/simple_sample/Library/metadata/89/89b0f8fea628a544a9855c108fbe35dc b/clients/unity/simple_sample/Library/metadata/89/89b0f8fea628a544a9855c108fbe35dc new file mode 100644 index 0000000000000000000000000000000000000000..27246cfcd0ddadc7d20076359c6fff870cec6963 GIT binary patch literal 364159 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 literal 0 HcmV?d00001 diff --git a/clients/unity/simple_sample/Library/metadata/8d/8d11b6dacbf85e24ead2e95cafce40fd b/clients/unity/simple_sample/Library/metadata/8d/8d11b6dacbf85e24ead2e95cafce40fd new file mode 100644 index 0000000000000000000000000000000000000000..e5cccaf31ceb5604e9864298f30e0deda71f42bb GIT binary patch literal 14689 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 A2mk;8 literal 0 HcmV?d00001 diff --git a/clients/unity/simple_sample/Library/metadata/9f/9fd804cbd377fd445805d7e5eea47877 b/clients/unity/simple_sample/Library/metadata/9f/9fd804cbd377fd445805d7e5eea47877 new file mode 100644 index 0000000000000000000000000000000000000000..99a3a6de7450c50fadf7b65a6686d3cd5326a14c GIT binary patch literal 10205 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 HO2B^rYg1={ literal 0 HcmV?d00001 diff --git a/clients/unity/simple_sample/Library/metadata/b5/b54fa8be8a38a9f4e8f53b4399135e30 b/clients/unity/simple_sample/Library/metadata/b5/b54fa8be8a38a9f4e8f53b4399135e30 new file mode 100644 index 0000000000000000000000000000000000000000..e286f442f269fbca205cc65fe049bf1d7d013a4d GIT binary patch literal 7001 zcmeHMOK%*<5gtX(iw+Yj@5Fg@-b-t_FVcn)#{y-Nl6hc6Xf6977((xE54V%qnMF@8 zMOp|zAh#THPVx(K%fWvne;`0EIpvzOm9P3S)3fZ6Y#_d+q2WCG>#DD-tE;M4Npj=E zBzgHTNs=!n$&J6`p6vF9y;sv=^3l_$Pp{*>#C2Tc#dxaZQYUZmQY7elN?2+y(4WgB z*~IO^QLcAJ$>Pzy$#29|zb$9tPR3751G+{)G`joelM}6ebvTo{P>1JQ8T!~y;S;-eL>@zeT&5F2Y-p5|&9hr%v1EY#~Q}Z}_u5c$@&mGQiU&9$nR)5U| zI)uu3W>|cd#G!fV#Hx}Wu=t!o)i`>sZ~=?YM{uQ9GCzeSe$5xw-ZXz|M(d@$-&TrW zB=#?@2^P_@!hO%$%V{j-2g2B90~l(Sy?vg}xk_eSbMy5@`>}zj_&7HpZC?s;mvKhq z6<$*tqc4YY+;fxBS0ac7U&1^G@RL=h?~7ExSEiygzWGv!zl<}x0ZhdVm|ztvTYWW@ z=JQCjC5s zzH}KU^$TF0N2(LZ@hY37wjzj%)a|kqi%E7-8S9k*-Nx(Y$Kcfsu$Pk*2 zO6zhiVv-Gd0h->ay?`V{6VS&(bK{v;QY^V8rC18@pE$+deSlviq4 zo>Ymz8A{VQ3obwcL6d1;o1>ZBsL`Fom}1qV(x?wM{94(fGLcx9Yu;JH|wzu=6 z{~tEY9u0%%HM5wNyWlugA9=#y>2Xyetzr||mzr^kOM71rv7g>y!)=(h>i&}k&bHkX zo;%EJ@uykchvyD2#Tl!v?i&%a#a0w9pSQunSQ+17VVLxYMwJ^>_v^7T2p^5=-bYE# zjtmj2uw!Qr!VOdZonZ;8r62VIYi|1a6}mMomBc7}eN8 zq;l~GrBEjN)9I}dKQH5MPVv(lr!6+djvvj~7>k||oLqO(>3N2WszJKw`y3ZlpcEGA z`sc;pl0V`7AK0BG?sQ#k5C8LrfB*IOf4TR^M<4F~dHApE`)zztYO(0;7g>gEibGV1 zuFZ|*YLdw*o6=E<)za868Re0;#GIc=ln0v|Pc}Cgn#0Rnvok3kpCHY=Cue%j-ej*2 zAh8AWwveZD4bbS-CMeAc4pBmBIpx`SE>j%^K-YmRHODU$km7~d(Rr7pU8cG$>oVPC z6DQ!9<0qi=-Sb_xfQmO+E*`V$TW8Cm`h5nEW_m75mKKUh*iQ0He!$5{c0y-`oUyUy zN_V#GmnUR9n(OcU1IbyUW)KX5FqKTqSV3%;La|iAaRONu83-d$)a-=HsS+Z;T`sXw zAl@-ww{Q%?*WP1e?*7`>xiPStQ!R=oB}AWld3`OL2#G1H3Y zC6;c{%L*9&q$sh1MebJoT~j;mbOv2!8Fblp!`(J7k>PA`UyUQ0={UH<-gO>To9s#bNXy}PE9<+o>F(pPGr(`+ zY@2mDqzh~6wbQzr_3yF)db);7&~HD4>y0f(dZ^(zAZpqHyNY|S27g?hM8dQ6ENhZP zAMwW7u7y{>zu>m1nEQS)`DdaYf+i5!whHwr?`Yo$R$!^CNT$Pf#W?)8eu z5s3u5n_w5=X}dMLC#HK%iRs?%r0CC0KW&xVk$_g)KMc(3X0p?qN%#ux=5?E9mU{bn z!PaCD?S_PgcMi8y1^pisLg}&bTTBpI9S3Ye{A(>})@u_2Qt?f76#dY+y+6kPm@Ip< SEJIzZ1UZDMu}ozN;C}&${fD^# literal 0 HcmV?d00001 diff --git a/clients/unity/simple_sample/Library/metadata/c7/c7e34aa4b4a41d1478337506ce720e18 b/clients/unity/simple_sample/Library/metadata/c7/c7e34aa4b4a41d1478337506ce720e18 new file mode 100644 index 0000000000000000000000000000000000000000..8f8109e777098e6b2b9b175c3eef0b003e1a6b17 GIT binary patch literal 4276 zcmeHK%Wl&^6upJEKzYC45ZJIQ^Z{alsut3g78N2&#R8#rT2B)r$BAsWP{bmv_zf0( z2*1D|@Bw@S;hsA)>9p7p8>obGCC6jW@qL^*b7Km&5D z-EQya>;8VCsWjEug3eS~Wr`lER1?p(1w9GeS>agIPv;XYdt%nIbR zK^4NRK+fdA7J`|^MnbNVa>$F3$?iF8(Qfx3hZkE-9qBZceO3>~OEs0&1bvQYfskV| zUohu+9_DZuqv-qFin)M$Y(8X@_h}=cNUiE9m0%YQNKn)==-mpwms}c_xfBw^iifw@Tn(cAeNa_brP976ydFNlGUEb|%c2PPnrOO@8a_mWAIto%g&f z{NCwsRx$PEPHRH_Fv+!L&b#%A?rCb_^JKn0^ZMsb&G-$|a7Q%ARF!#6Hll2<-fSdH zN3j$@kZn9YDTpBdq7=UVYbkW3xs>Wenl@V6-u`p4;AGP~xvuavUgB_|8Q>aC7c$0C zx^Z)`#n&Z1(BW|Otj9o)fgS@r2L5{nK1_U>e=`4V>eJZEl^?ghf5a!9eD9~X7gTdr j$6Xk3A7fo0U8mf8oDah5feXy9o|~b5E9uC;E6@D`hUmb# literal 0 HcmV?d00001 diff --git a/clients/unity/simple_sample/Library/metadata/d4/d420514133a0fbd4990025b3e1dac764 b/clients/unity/simple_sample/Library/metadata/d4/d420514133a0fbd4990025b3e1dac764 new file mode 100644 index 0000000000000000000000000000000000000000..da99172e282a891eb0776a05d556aecf41319cd6 GIT binary patch literal 50665 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 WPDs6>Zqn5D@_1Y|gNmv6DB{1wNqas3 literal 0 HcmV?d00001 diff --git a/clients/unity/simple_sample/Library/metadata/e8/e85d437f881938247992e492006de2df b/clients/unity/simple_sample/Library/metadata/e8/e85d437f881938247992e492006de2df index ffcd58bc3194765de3ce119f53961d4d97e87125..5790d0184d207d45d287c87e93b99ee5de416a52 100644 GIT binary patch delta 76 zcmX@B`BamGfkALH1B1xLjU4L)IWw6U7>XHyc(S69=;SMcI~adX?iG4AIbT?B@=ReP cJ_R61%_&ahXHyc(S69=;SMcI~X5M?iG4Axm;Ll@={^F V$=8MXCchNspZrJIcCxL=3IK*Y6|n#S diff --git a/clients/unity/simple_sample/Library/metadata/f9/f9efc5e870ab48243b2f508f00b7a740 b/clients/unity/simple_sample/Library/metadata/f9/f9efc5e870ab48243b2f508f00b7a740 new file mode 100644 index 0000000000000000000000000000000000000000..341b7bf6ac0f77439fbcc01820fb2d3b1157ee12 GIT binary patch literal 4276 zcmeHK%Tm-p6ul@9#rONIqaT3s&~jl}fCI_`of257g$-$DVr4Q^5>RlHg=>F7|G}Lr zzsZ#=#(Qpe4-F<$ZqzDkZdE3o^vQko=`#t@@G#NI&qQ>X&wL`97#SV8yEaNY?RNVh zU-$PDO{J;M=5?m3DpNGAQcXPD7CiqPz#tbNv@{oI<73oZezx*PuVzoeK+i_1o)WvE zJ^9mafHNR&I!goY}CN;G^`9ZW?%ybRSFw7 zu)zXYnk8Xer*)Mzo~ov4%aD)DP4uZGQCnnw(Yiy7ab4(}G%Z{(txLmgEk*K@h&dcC zRvRiIbV8oy#S`-pwhgT$tcS6R9yL^4*Svh<@`(3<9g;1(?EGEna zo`*Rc#why!E@Lj@9-9x@SF2ECubmwhjcK^glQe1-495Y3sT zn{XIA;i{bwOkN!88e?3>Wi-3)`El{~((Fb70`0jsK?(x5z+KSK^%`MwRy?pB(g2eU z+aoaA_Nx%O8az_|z7W=GS@K{e2sw+HcbSgUuoXXKA+05PO|6(MU;`sTUn%>zJ6`{r z%d=smSyqvUFO|T->^iY;)-8(z76ydFNlGUEZYJC@ov^Y*A!5oL4D^;W{|D5nA% zWQC_k1tH`gq{6qqO@$6Mmr|XGXhYKe?LQ|IPBy)x>ubKoOB@b}0j?pspfQfh&0B*x zUsw2m!r|yyuLHdf^g7V%z<=L?PdhI^4t@PF{pI_>4|>1dk54-J-cN6vm(eaAa35n` cAYG^2dz=r#>wyc*ub!KsekGvBZoj|x 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 literal 0 HcmV?d00001 diff --git a/clients/unity/simple_sample/Library/metadata/ff/ff990239cc3bc4a45a362f932463d378 b/clients/unity/simple_sample/Library/metadata/ff/ff990239cc3bc4a45a362f932463d378 new file mode 100644 index 0000000000000000000000000000000000000000..2a13f55f7b8e51af3368968f2da93192cfc84536 GIT binary patch literal 5208 zcmeHLTW=gS6n1I31t`BJ1(2cRVnd;1kyH)n*$;rt@dalsb?215YwkQ(GsQUys$OZg6HiOybN|fHX&U!oR zt*>M|{agidITW3QU2?$eZU#}i(Ma`Y^+2Vut{m)p)A)v#yQ0+)T1Kgzi#4U0$ZpnTLQ z7LN_#@L0y;@e*8;Y87?J5_d(<+8gVK7_P_mep_pC$n1aY32k7;itY>6UYW*3eJzb` z#s~wkYqsrnS7;W9RG8kUY-a(H^J%uV>Zis7p7wFa<&2&ojMFrV(Pe+0tX*XEYzZP~ zg#FB|Wc@eOd0fuvIhyS}PS2NUEOL6G1hGd>A8XpRn(WIckWpL7#MtVphei|nhj;JA ztRL?no?qp=_mX{O#%E1?i0tv4x4Q^md3gxw&DPuT&dMtu&S@_5(pO7xtvC*8wO02^ zvMBD$z)*Y51G5GDkjRuttz&I1^12T>F1N@VgmF8C7~`!Wx5%6RJXzZkszaGI2oA?v zK9DBEF?LQQlSFjvIeU8uR<=`|Fpk$KuYSjy2UtkagT`%VJ`)~`glaMsDzx@`*F(b= zWxU=a%z3=t_vR_*^+5?jMJWqaWJAb=2gsVtxWc~B5yBScog4+~>$syu&+ZP8Q$BLR zKKy>sWt^2>Kh_j|M`s>v=}cLKPz7Qz%s+O{JDXIXbOtIg^_ZE8rg5j0l)EXBv$rbSXNn#|7|Apn zSk=NX8scU{+lO7ZFu%wF1meSPSeWl=7L>=ZzMq%<8V6>9_Tl`8tc8AaEtE%lm=oe~ zXcwbuS$&fckG1M3s^XTqBI-!wBN)RkcQ73!3&U)>&bA(Z8*e`?J!m;R&PwU;X3Mi}OLeY|0{`KphQ67x4#}NVs z%NVY|3v~~@hh*-CV`>(Lx(8wiAKUxzX+hoNbd6fPU-G!c7f*{{?KlL?b90Uf1h^*E zv+|zYH6K2lR6-okJ~2kQI`0dqjqr#I{e8Ny93*sHY<`7(N4H<7U7s$D`$#2Q* zmy(LFgQYl(^-N-a0vN6H%IH^r`;Gg~^#>qCdqkKf=b4@5n|&%I1Ih2MZ`3~}x9EqW zEdxH$q^~b6QrYaw_8=5`g72%eYx+f@e{9TtDe!S_r{`v&G8pIIj5Tyj)1>qTM-QB2 z$Gqf|<7+}i7CAm`?^FC1pR7)szbOlbayJ0&a|hIWD#7m`q@doTw%U^=V=B|;&nf9D zD!3^)(x9em6RCShaD1{dQ>jk#>J;czW&rviEu2OJ`;=7dWln%5c znwizMht|3jle$Q9IwJ;njrXnOIdRxkq*E$eu_9Yh14KLofYY Owx{I22^l6$Q{P{mr=8aT literal 0 HcmV?d00001 diff --git a/clients/unity/simple_sample/Library/metadata/ff/ffba25341839373409b0cd511e9b1761 b/clients/unity/simple_sample/Library/metadata/ff/ffba25341839373409b0cd511e9b1761 new file mode 100644 index 0000000000000000000000000000000000000000..cdd44b7276e532fdf937c18fe127b877d72986eb GIT binary patch literal 722870 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

@C za8xM$Z*2v5Efc&GdXMh**x34O;z9GeBd3?i>wirNj!Pk)UEtDd;}~bqjyN3MtuHpM zT9ZgfzbC8zCt53ARaK$P?Bv79Gj%w(wyr5j1{gnc+@8GtjoqA&TU-CGWNWJ(0sZVG z^4XW;96;-W5{J`2?P~RJ)tNWCJNi1fFIBsx(uKTY?TOYIn%i^Z=B=%Ba9$=93M8-j z+D%yZ^mWu?{Kxs9j*IhO-mU)gidJ*qO85k}d}J1;OU##?#@hAnjv2_yuHGHk^5YU4 z4r<7Kd`|oy%jj|WFPEzSO7Yd1HaekU$iT`*(s> zeLdJGypsCgjF;*Eeb6uW|7b_t|Lf~mfbUDhf-_vRlNiS$)C+OY!f#=wr2rFOuE`u9dAk|JU8Iret?bP{~o`S_u8uVw^-Ce!RP*;U=?xi*BNPu#(zB zeHBXoWm^KA*RZnO+DiPjTh8FSPss0pUMQbJ>)(L>H$`I@SJZh~#A$`oKmBlZNkHkR z5A!ERH9e4A;F{+5z%M!fU%CFdKhC^1KF|Fv;>BmQZ7mqTLP(rmiGGB>@*v{#A(hV- zNOpHH|D_)L1o`Q<=|;t$$bVTa z_wl)0{tNogc`HBvMe)tce<3dBzYr($U$(XaKh7D}Z&^_Cw+?r9<(7pvfln>RQ2 z$o{h5q{}#jEy^FOc;nsjpSVs&`C~KwM*z^$T8!~bL)^0e_6+*5662=RSGtMx@!4|3 zAGb9HG0x=kc`x}-e2)1~lm|Ye?tE|y^j$Hn>hyK=Q@#8NjB6F2t5E9==06b^${(Bc zj}ZWopY#vqkIncW{>AGtH9naA7CD^0uBFxMP3jnD@Etbi@tQ3Umn0Iw8jhb%kK0i= z{V#CEW5G-f_&AXFP>;AK6O2W=F`s$dHq~F^o~-_N+|D>wM?8q{%f#b#Ev@@+H^&>q zZLmM-cfMY(PXE8+dD$1bJHGHO)a_dQ1&+&8r}+z|f6}4;>s$RRz~_d*md{qk5J0WO z{OP>00`ndGf0Fvg>rIV(Y)AlP%lh9~m(QpI!|sk*D{SZ(_0Rg>Ev*OZ#`0gRx?Org z`47xr`4h_DTKO;W5ZCd{e<5A+sc(Jk?jY!L{ZGGZ!TOvn|IYf~avz@?%YX4$`7c)8 zE{jhXfhzUK`rpLG{1@WH@tCK#Ai{^pW&+6l7K;weh>+O!bkZ@4!2w3#_^vx zujBZS@+0DAyw3a&?#H40u@(R0{l}IYl$@kL_2^I5>JQ5HLT{4)#Pzr-AH4pz&i`27 z|3d;G`Jw!ALh$f8=06c9j{k(}TYp@_bD7jTPII@1XDzIk2Vv7nIbu^1Jkvhyz4k#9b);_kj=VzqepqIew1%M>~`8 zSYh@5kgI-+PwBf-)3Kl3cvDL&->clzIthTf{x{=pE*+P5MwNGw(YzYFbd(W3La(LucG80# zs5Zw(?&EXVZ*Y(f3bHG@cwMatpB!J{Kp3DA7s9+#f>Zcd{RmtA8nXIXFMNbv4)>-F zYls_s;g3AmX!Q?#*uU#LRsK_i`*Xm55pK-erX1nF_lX7Igv5$Ji z^}j#R|L=$X#UAO8_)HA;w{Z^ETK}eDN6g19huw1jo7rjH{~n<~ZhXc(|K0|Bh5h4C zExP+(v6V2ov0m$D+oIRRUZK5hqu*|vx}NKO;Y0u2j)|T8+F}1}&%pk9y&Qpp+{fp{ z|BE<|v>3x$EHc#?hCgauI@%UJ8n1-kK8fJX(=ku(iuJq#HO*v6sVN+hQRqSU1`w^<&f*S+iINVpN|D?|Y`Wr{I3zlAD`wFgq z>U+fY1nms3BVSSdsgKncO#jD6pTze+_EI09AG6x5;=?>s$h9E)XFsz3-INzzvr#Xb z^qPbRiLKDTUR5alPqbU~r$v9_;fF>4!iVcx;85$^_wxO7qh+9O3iiK2=Se>j$vFR} zjO-I^bt6^IeywVFrILIGQ}EkO_pi;s{)G?ijP<|O`!6K!vGpO5kk?uNTkhj?SpKT{ ze@Y7D2;@|`AebOu;-!A}?VGcJzoSSvB(6dDKc7!pb;Nle>9QU*TO9xK@b5t+HVU87 zmXjtu(6J$t*ytJESe6|cB7J^ehW*g!xcGZDaGz}HtUG6oBdq^TI(U7q3q7`!BU^m7 z+{t(x+aH|&6`#>f{QgH!;jgZat|p&k(!ZM5QU6Ah`}iEsTaykxqptG*@^SMz`LbWE z|4m%1|IO#we~w>>Mr>l=0lYW!Vr1THT`~->kf}4_RSda6X zz!7i%@P`Ygf9N5T;^P1QeRR05`Ppo<}vwgGgu@oIg9{hR{FrT*dm8R0{F zW&R6)qx`LU|BdpuIB#I)zsP-j4(^Znm~m?g@-f<`zy0tW(*F$jz+Z-)*k>UQlr4@D z7u9{beiv5%pce?FGU&&XaDO%4u{flR2Q*-3D*t69KmJGf-%a}KJwrN18v}JoF|Q$x ziPzJgxZd2BAODjN<9vkwD&9ocs?Pr*jK=vtb#AX*@Z`t;2>**1m*bd;l3N&g1LX5y zyaxLO^xNoYe*BN|rk?RJ?!mbQ+I5xU2ftP4=+G|}uOs}|83!Yb){K8b{E832(C=%t z^X$)Xko^H)H}aquFEMW?KmI3f@s){LpLisorMFt05LvdO`S~V7~=7 z!v9I>-|08`gr|cK`cWA-`4m+D7>DZ}#nk(zIh8@3@h#+F6ioj;qfa9IAK^HuKW@)b zKi(;cTBUy*?5i@v5C$;}~CHXIf*#CPk`7bA1jJ6aU0CqHP-;(lsuls-RmjCpA z?EhUV|LJP>|56wLnFn+w`A?JC|NB7y<~|a}ZSFT+_5N=m^bh`OAANAoU#{T${pB!J} zzzZ(oI)%VRa8AU1sO`43L*T=HGJp24)$dPC#Ethq#Lf3+W?qxkKk`BUcBRkOMX&(s zN#Cb%AF%o(xDU1sHc=krM>)QQe&dC6P;hfzSMsuOiyU*;Ej)YZA+G2FC*S{(kLm~H!}ovq{%cN-(r=N&2l}_{_76n=VvmQ@2U@spKh!pNKFlR} zw(TM07mn&Z=@{CX`e1tAN|Xn%4dOoL|MaBeSpQn}uTTJsaRbg{XW8Plvx-MiMi%ee z@ct|Abe6Pz7wg|ZK==&qIoQJdmvmbY>`sB+_bop2HzAC+$$fk-SO42%<^Lf8FrSZR zx9Wc*|An|%|C>0O|3f~+WA>wb8n1^!9uMjJkpL!q^6A--0LI_Ue`1TYg$!HDhwEe2 zf8fILpW?wi2U_s?Z~vh-bVEzT2luca1~_)MVZR`DIDN2%c{}u9Y=0;^A|K|zkRHBT zXzhQP{FwhFc=#Oaf0GXLNIKi5gU=gPJ?S9Ynb6lwU&sI0h=ci0J-~(IKc`5S{TJM9 zkw#&i|1sZx1d#wJd_)dxqeuYlY1>xj@4%jd1L+Ty zgO4ulp|(H2gZ&Xalhyy(HYe#t2GS12=TMu;kMs+v|1~oXQBLljwpGx-ruVdcoB5#b zLhGOOyxw5YvNx->7exQS4?k)6dJw=5wWS_qUK#m3o=GGI({o%XGw(dmGPnonztxA@ zmaIYfJM|t7>t8?faLqg!`pLxl-_Fn!+>iCBmvSecf%HSJL@*Xx-!fhExjDbBVmWEYdZNduZ6#{{*4kB>wgm`(tneb7x4sLoo)DB zhR;z>d#Xl{Jdpn9 zl{;YA8}R$tNTk>F+mMsY;=ulgo47FjTls&#tNyn)CjAyU+;CSj=}Q}wf$=e(OFM&MsQ(s%o6S8as<2jlw9t6Uu|_{_2{ z_whO6pu8_ik}F&;^}H_yWY{V%C*VkYo>h> zH{iYby{3nsap|)3M5GPl9aL352dk!f%9)SKuu7%M5K-*7Sxc;TT zliv*2**5ayb?irW7h3;mj05qErmb)JKF-UP9xJ^5*L?@y8H0ZWT{xGOS`Ym<``v1O zDTMxMM;J#!kAd!uQ$w-uqCXJZT}_+d|FjR-;nnD$b_Vy*55iBlX+H=)eBZvx_1R6K z&^B#4JcjR=et{8&^XA#M11*@3FC1)HdeQk`*3o7@nt^>Z&dYpnO~1Vn0=NbD(;mqu z0X{F698PXv_aFRZmt2J{ZHVS(W-;EkFWLVcg*i0-W+bw;rZXi z5H$JlKED6h0r~v8#XSE@c?A#vJcsdqb8jTp5C7zOMvlw9n@c@hf1qq{i0gEa!Tb;T z2yV!c{!hDSOWfqcyd9AvpQC;`Uws>Lycgq_4+jAI)%t8P#)mns3ZKV892XD(5EuQQ zILG5IQMlQ^6X3^|a+H3H9OlmNQF@{M;s&ICI- zzhw67(=lUG4zKPx+r~O_h0?#KeHZ%w2I8+ztN8y*=uaeaOwIcl=tKG~a=2Rk?}I%v z{y*6AXNr#p^TE{SY1oHC#8eRdA845Z{r9B*@2_BR);_W+sD1G-szMwGXdjc+KgSQa zxyIIpJd(rdb(Ztl;~-tze{|B1hen=SK**fRe~ z?&EVDk4cAeBwa7!1M*3NkI6S2W{dL2*#Ah^;rLH{Dd;5faFbqs{u6)a%keOt&)5H< zw#tw3oKa8OcFh={!s(y#Uk&~Dq}Se213q_^!~fwx>_;K>zwj#u+j#z`CvCq*XMZpb zcr3XEA#dro$eXR$?Um^NVA~IFdK`2Qr}veR&mpY;xqfDU3aNk6L-}j(VEPffp9Vkt zrXTV8Wc1Itk^5F$Ke9cGeJ8eqY4f}Bzi!!u{1E;&zZX9+FtDtqChb{2oW{C8rL8lT zHZe}vFwFfw{2oR=G1~RUcOR*(O=&#?8y-m}&t!6ZT2LvA8T ztFCT$kj~K17~LEni!X674}`dO?>-+FoMX7nen`KhpTbAzHBG?1VHow!*dNUNs((h0 z>fhmiLj5z(d8}8{3ODCnC7%g$C=$an!BeVByT+w)!D*lzs{xk%Q0|Ieno2KMehIy@+8_<*y;!MjYHzhp@%q zx)EU_eyek5DsKmW*E$WA|L5s68Vux-q;?{u1^;k;r-5N=Yk_5#8j2Y5Q^E!@uKoWQzX9cy%e}3xxj) zH^PlE+@O#Ct9}vpM_=zz>v7?;(`YoX{Dr(4k?-p+=5_Fc92*TRqjGro9OzULuaaXP zZpw%KLs+8|2f}}a3v_&>hu5v+^n!l*C_lg+<=@dS)nE3Ta^OBH`GB30)79u-`p1@X zWLrr6PsA;Hp&b@h{|yH6&0q&g|4#@X@-L+RNe}u^a(aLC-)Q+|JLR*Qa>726;+L;~ zRVT(;|3d#&yI@bWqx|~c^`Jz1gI;YZ{2#(!_tl(d2$;$PIGvDUxbM|cK&xNc|5{V%S6xo(%bHGGczNC$r8{4MzSkvKPs z-_`i8YbW@?{_Vs8`;QWrtbfT*?V~B&m#+W)!)BZlz~9&5dFKC|Ksz#W=ba;&11{f3K4J_?*z897zx3mN#FH+(+Ye%8|IJH{zrmiCa(lo$bbmQQc~@ zkK+2dm)*`r;|RAQZc=>kKa>NKgYmS9dl%X()xYjU{wMrJ*NQ!(##4rocypxC`o}>} z(0|!&C_c<*$M1NpUMT(ljQXegVOJwsjp|RWc1v=Ua)bdCO8;r#$GOd7$_Hi(J4+cu z4Gj&vj_r?Ah0^~B6^xuf|LrC&`ahq?>+dATFRsV<+iv;e zd5l}++l}#Ij1TDGz7wG1-GuK6qK(8?dnhkGdvk)nkKgfY}yI|C9&HO;>Rqs2v(|DtpfQ)dwK3 z|A~2~F#4xnoK8Q+l@9o2H4@j++8Y`;?}Q#eo(Wpo$z=5pt&>dbIOyT~mXI6$(jELE zey?~onG`;>ADnkYJc;~Y2w)dl*3stgWOx2|{ySSk7&i}Z=6uZa_reFqf6V%~a9r}iF`5`#l)uf&eSA*l|Ih=p zBlstF(nn!$DDsu1zf?yfhyzlFyEqypE_43xL0yu3+{k|!bvW2B4|bZ#2W5o4Y>9_) z5xw#l=!cKrxtDbR4Ii30kNJ6Kch<{!IvN@r9+M;Z=Hy6R z%zq-zM54Q!^pLjUKabyt0HV~B-{)*N4jjjht*n=RiyQ>^F5tcr{ZlV`R!guSGTu}n zago;xssA+Sp>W&6|Aap9{Vb(_gnnj8|Lw+e#=?c$@#=Y}QG+@bov^T&UZiz^AJSjc zzDyzXPq~0jnDcUJI6OoaV|~9)jW6v+<1qe?{gMsC7)M}z>$v|1{jXE&_Dz)gJpX;>0x|8yfTKHenfpBjLul=v4pk%Q_X#I@qdKVe!f5Eduzc> z`H381|Dm(LH03C`8836)z79Pk9k%4h>%h}3_whN(k@PVBDgP(#d^utrsm@Pw|AV+l zhd43*B`w^DTh;!LgZ(4Fd^w_f^^^nPsPmD6`vd*|Vd!7^YyXDRc)hK4_7|O2ev6iN z)Y(73pY~Ra-y9!0`|s(eeQfBz*!~li{kOw$^X)$l`@c79*}ui-p8j9`g7!~-%5Tv! zPT_TB|JHqcPVArO)=5|F{|p8a`kg)B{(;NHea{5k^A&FLQ}&NmjU(W51_LhbU-F19 zW&hkC>jpoLE6hje?C)g#0}tsD_x%1d<8bH8k$&6R|Iys|C%A2w$^Q%D{XYGha^!Qw zLwX!X*a~jyi+sn+u`@UR1#lyAkAe=z@thndjDO7A>VzEHF(KvS{y_g@^WX2Q{w1%C zdguP1(m(R?A3crlfFvT%e)i{R%k|h}{m47k9G;@no&C)Jxu^f_NAl}`(=W|)a#$z8 zE|veo;Mj(IPUo%Jx0bQ~cRnBHkM_@TX+_Bz@aqj^GW&!NpU>fr znz-Ms{`dU;`_1(a@Z$K7|Iz-3N+7Qv75^OU%JozCoF-of{J!Y469eGQ{qfxTNBF## z`rmvm=l>W0AM0O*@A70KkM{4IjLb~ao*V|+F3 zakBbu8)LE$5EV2kp{%5JYj|D=QR*ILI=+w)p#@#4q& z=agu6j{Akt|KL#3=?7X{TW>x+L({f}XPzB-=sGQ}FNa^^oR(>4lhr@v|BL${?Z@#C z?`Prva9iiXW9$3N7wgH7z^-2#Xq32E|C`SvFDdb8|8(SgM&kFJ{=pn9-)x_SU&do`_|K2;hhM4rj(CVOANMZ& z#^;}{{g3V>f1CI9)Zz2r;d}b6{ZH`0=f5#N!V7W!ujuqD=%ZV|=k!A*rOmw$0!M!c z31GZGlQH){g%9OOzQoNIpHVmE2;9;?KF9js><{I5&*?cO$EH>II)=XU{9*(E9M_x` z)28z8`207;-K^CAI|E%ESq(F^m9IuTbykVo`re^BN9 z^Y5sBqV6k%{_i>c>Dz;l*qgl%l{ibIG4u=LfnAMbs|%?ALqp&ByT3-=df@M89vST# zuW=#AZ!FdvHiz_EM}n54yDQ@Kla33EfEC1G{tTL(T^HPwNjN4-`uO z#LGOgr+VR+SkFI3{Zv%=d3|#FpHBAH?6sM1Ab#44f--(+zC*Vc+-+eRm9c`XAt+T)Jz$%<;`x5LdT-DnPz4R0Jl&1ClpyL%je9s9w zN>0R0{0JjZ|48jys{IPeke$qKPS0><^ltPA<0lf0$!9Y9A6wrSoo2iVzjxu7N#f04U|h57U7hsW zA~)iGbAO=d^yTwkxZg%O(r(#O4j=isng1euHmGhk?h3jAPLI2&v1-tbTC-3WoUxsk-s|a$kyY+KTLl2dN zYLdkr{ck+KYIPzZd}NIK! z@BjErJ{U)$#6|xnPV!4*9|5?rA9LyaC&43fARqF(hw*=rzOrdZ=Kl@-%o8b;{^2Jj z+O}BcX0=Z02nStn_WGRm*oOYQ{*>Qk6FigGzvCuEd^pN*vs%Y+eHMyrx~2GZXaCe` zUa#<(to}Ru*K@wfApX0qITBBFBL0Wj7g3&t)ql`6wYh5he9Lc?AK53Tf2bAX2jYIZ zIOKvdy2{>I|C{3@UldXA=KcWIgZTUU{;~Ym6zre&#{3uVkE#2x{zUoPDy~EMz4?28 z-oyHr@JBokK8hYDK*bM%gla9n)i80%eSD7oujoLKss$b4qxfPUVJZ9vWqYH{kP$n4T4f+S%>OTA(d~*ALIQ|n;{XyU| zQI3ia=&bLblFNTK*W;jvKuYn$xTRXqQG8%W(my^2*fvFn21WfS+>HnJh#ZL<`eFTV z;-den=ksu@en`JSXPg`rZc{IcKKN|_z105;`bTe$)!;j764_FV>Mr zqLHcOK6uJovCmid#z_#7Qf%J`iI}@zE^)?<`IqIHsvF@C(7}@ z{*B8rXOc;g&)Y|qD0vC)F*%yo~d$g31 z+~WUn`t2i#H$%M6@1MW(+S^A^{xl?EL zZma%P+RXn$0-*5W^SqCIh`aYUukJ^gJo|;;yg)vW^Y4@oTh@O*c61Ys9fyyK*w!N5Hx$HM6Uf1Fl!JG1vUcN`rW(zTDD{qoV; zT7B^S(m(8&ep3ATv#%aOS<6!s_0RX{SO=*5AB2f&T?#w8k^6eITdqst*Xo=b?UC~? z{9oA-!hgTsd+fCUzDLz({BVDK!7B~a5AK8iUwahcPw4FT>CNAjBN1VKGEBJVmy1o_t(29J%t;Y9`YWVQd+ed!Z zd(%zj<-$kgO}T*G73;st@b=nl&g9l%_+_d(L_W+jE42Ps4u9{c{Zv@*g4|I45dE6k zTOEqsRVe+xgmD<-@tqj|=_lICVU7b%?Lo{p2(x2_)Bmy8{6mei9zP z_np^}_HVb@L@$%ozXAPck?`GTyme$-v>M+TfW3Kqe)h9|<%$);hx< zLm~SAf>l18|APN?Yu#PoQyH(0kPr9&h>QNu^)Kun^CZq2Vj$uA*Yu+eyeQzCkdq2jtR3H42 z*Xt11aGW&9f3H{gP!2GTg6RKcw;%Fid=rJdl>Zb=|26Q(Y&Hq|g8q^J`}UD8W17!x zFO>fOc=**L6{X=Y$4ysNXbxKqa=&x8E`dC&Sf`JLorlUvZ4%&at0mv%-gV#r-X|@8$dFT!*9ltr`Dg z{;xw^f$_t^wj1w>`i$p~hT?aAf8lec|0Di~9^mi$Us+J; z*nIY_BS>7n6(@FHTl(+yzi64Kipr6 z??3bz%Z^4Pp_dZ~jG3Vt_D2jRWo!7XJ^cC>Q&wt{)eA)ab;C}v<__vtp z0loYEN%+Y!=sR-iBwDZ6SIqw4_>YQ1cpsn39iUNsMs3uA&Or_^WRH!mEee=LU`;P{8~ z7k>YoxK5z}7U|;nkD`O&NR4Ya{$rj0G4ubuNB|Q)v|HXsKCD{~{QHY>0QC8zT}Be) zBCit<_0Rg(&x6lc{*zU=3khIC&y=Hij>3rqz@x8B`4;n^^7*j-cNgpn$A1vde(&fh zwB*D3-*O+H8_R$4sQDkqe{#6VC#>5QU)KL7F6KWGC+mMx4>KVjjw{-TuAlFJ>&QF5 zsjVd+9RJDT8ISwQ_0KrW(am@q^Ck9m?=)WBKZp}<zF=OJgcHtE3cCp3#DYU((aPC|EX8kMvKBVsZm-8Q8(b3Tn;r<+kt1Q>) zAP@UZuVKr1n=SnpZSC&YdKmwE$M`&L@tLy1q%W;`UGC#^7>=tfIzvKN_y}L(z_c7D zuI0;@`vm8OQ-WLiVfIV%v zIEZWa?%i?0De|%U5r!PuFUZmCr|=o0cmFutAL#%0UH__odf?pkgIp&D2CqNI_WE;y zL9T}qzXMs5pXgJLeUy+i721kIVBD`Q-Rn{N+AAce(X1_RGO% zNfVa8YG0r0TH@k5SDqI>@_QnmvU4?qJh!(IxRFMr;sX=+hIc#vSXFjzqk8{8k)H4o zzPZ1jyN2&S)cyx?bHDZ7&OeGA19*;ja&#uhXCfcsnz;YLJfh3(f3V*;{*$B}AjkHJ z^d|O4et)3<-w*xM&fwiviKm!102 zinEcxpeu-;*@Vwz^`Em_&Tm~^~-DEpkos5&||MEO3`+Q!V^c@cOakiOE?6?irBlrM_+{fqW|D=P@ zXsi6cAQJNO`H(Mhu#Pry(f{Rn<%c-`cPH%&=l{NNih0IQR0qx#g^*`#llecN9&wZ2 zrRqQPzG~F%E;~24hWo0*=L@H7uHNRUQ)ySD82@Gu+FZ@OkqCdEPjz+#&VBiN^nc+) z`mF!W-;tEH|B}R12v;lu{I5!D>X(y|H(=SIyP5HDN!MXB z;(v4-JyVC?Z7w}qQ89b)!+&DKd6q)yKQQ*z?G&(}ZskUsODNDt+Yt?&P(e7w&5Ctl}$lktD%|B#;W%g=uz{d_r! z{|kO;InPA#VK&a2c6^vku1{9~LWlEL6rM@FCy&QtW*p@xp#DGnCqXzQ#}~Krb0;|d ze-8hIf4=`uM*kdLPDD9q(X1BeHGIL9D-CaZrnj{HL^P5gh=_POTSgU-)9 z0X~e=L)Ch2zRVy0uSEY6Z(Z|LU{FWGh>HJVe{8*I?InS85fmnr`|{&Igso>7XCnO9 z7*AkaQud8$Tb;{6_@AB_{|C-}XnHQb$ex3Ka7rUQ6Y=g*%{<;VZT%{U+7zvS(x^M8~huOs{~ z7dcLh|7T;Jq*blZXa`eEy^22Q<@Rfci}Syg|5Q);5I6e)eJFkymvVAs{Lg-m#s5_Wk=os?9Aoz73cA} zGX0C4iJV04W8>ENeL=bJQu{yemjCj8?EhWr`{$F{|Esq45g2dt{5}1M`(|9Xs5~O< z6VN~5N0ZwByOR8;LhS#&TmBRG|B@KEW&RiaQ_pGq6Mg4jH~s12{okw6Kk0MdF=uZR z_BY>c|Mvs^U%X#`sr}z~(?9qB@G{k)obj4a=X)`;#dkCCo9}lV#pe$Rbt?hf&L^Gntph;d(Qj1ThiaNh;2 z3&ywRb-9nvai2`l0YB2k>+!7c5x&H+9rTE6CiwCFpGjA6OFzthNk4^;(0g^wqEJ5W zDJyo4>)*Z0cE(7z_tb`^9@Pqd;UjWfGER=aJ#p)@4DJ^`z#SqT!JQ{ZbzSb`a}M0c z_kU)8OuB-b@Bd6ZCJy3?<9@*@@?k$HpPU@g&wM$K(Yt>f?ho|;hoOJ26Y+Xq#nCn- zfbn-61(4V#lje8p5hkj2J@a2)ZEBCy)I=f&7dFg8`CC8gexs~#*7xAR&KTF@ed>2@ z?7+eXWdDRhv^(a%b>P!s>l!`)KFhUt zQeT{hY>*4Y!TcBE+Pxd+f3d!0{tM|4H`{6yz+&t1SoOb=04RJwe;)1&vyDb=pwIs7 zc0Vy-@_GJm7b!js^A0Rz{?n^XKaF&Bn0Z9Ze^PuBtpA-SN8}OlcPQ?3{;=thuP(+1 zIW0c=TMdgtz#aJb&&UVoKgPH0FY)MnZU;U%N;*!D`Tm1>8~J=tpTRmu<#rR-^5yY3 zaWenu<3FRkbk7)l^;W?yJy$-AUCC_e!M~U2Bh&?!~&o4f+MuKj|_5 z>0^f!Kkxs{sy13E{qK2+^s-*l&f2xD!?fq++E<=gM15T-l>UjA`EMtcymmVt9B5a3 zo?F$Z_!LV2-~)OZ`a$~jcad)-;_;9^s#fIek@m!OAX|jD>U|W}zgS0hF2iy3q-k$s z^}p|L{vzl^&XXR}e`8(4w=8n+o3pQB-p2oqZPnD);l-gfZchXG&~Z6$bKRcL2jPL0 z{})l`-@#A$5vKQq+{fpDXOw!!K0@gKIM^Qf@4D_!h3ZaX8IUgyC-7+h0{S}g%MIhr$bwKL^58&Y2x+={pRqHBd|>5Q z$TO4;Q!#yVjjt7ttV? zb&)3qbZmUro!lA2GF#!{eS8kf5p`~fawI?89u)bIFLCoX9*+_imMzO^r^w4nVqA`S z{8|0ZfqC;Zd@zH4ieW{k|1Vs;I7vL0zOQ?-Zbydk&*E8|L3Amq_%d*Fn$`r z@vkiTLjNJkwGjH}xRUky{e7Sxk5*M}9Zp4j-ej`RI1sDCcLu~xCaeF03wMNQk6pvR zj_va}eSf3I>9Cq#V2^&`BY6O{qsy&-vHVr_FS!2Qu&iSt{NI}YV==?nAMzx9>pe@l zhVA+eoSXXMyq6>KS4baz>ts9&yY-UKmE^zhIr5|2LFU_C!=GK`u8fBaoB!0g>`RLv@1Vt}JOxW){hzPF|0$P7^oaa; z9ckeK!NccFeVBEW$d7bHjuZ2rIw3E?$@5sGhyLN;ff&-+^_9avjZ}v!S5Ys3?G-#5 ztvryc)&EDAVqDAeoK#Z`=dz5I!;9v<5{okaD~SF{rvw8a{Ur2ogRjr%r#+P#M$uPk zAM}69Z?gI)AB-bapM7ZSFyg9K1ALOVBvx)ke!0I|7xS25ESiVU{}lHD`5`dsAK|u&TW^FP@%-=j@5tY# zz9YZ1nQ??UP6c2{u&;$bY4G^_h8b_1)VhrFP{XR1A3wOTG4#NfLm{q1Y3H<8et3-g z(%WJGoTo{LE&Z0)%VGcOJ~%F)qkf5(-#<5uyMcbqEwBUdslYt2bK!z`q?&)f0L2j( z>2UvhJnj;OoBcZher&NEQF!XPp#?u-{qLjZ_&?GJOLO|3<#*XaSr|aqaR0&(Ho)5> zrr$ne&i~5)p+}Yf#5&r7oAYu`j==qlIsXUAhhIv)?jIRfGS2vEB$;eMynJ$)_Dj9j zTYk&?_?-Cv3D`gB3hta7t$j;APh9kW;^a8ezmT7inohrgy!7o`hl{`J@vKsDUk2j{ z@d)mbN$CHN2M#O*eRmDUNwnpC#+Me&*>_i*dKm=nLg^oTVqP%lLO-Tn_i3C1y=95m zMDtvtN#NFyYM}ZZ6WDLpRsLU@xTec{9W7yf464qN6C zu|@gYgxtsHs<8h@Iw*e|`Zf6=aV-r#5ESO^hI#z{Ia_}JoVa{QfL{taiEiuM(k1d= zNFU{I%{UtUMw~Q{c`~G91D<=AG=@Gtw0n1Y`Oa9};zQi{dnnxQa9p##J>tOu2+|SU zl4m3R6FCz1t4;Sj#Jc{Z&-*^Q1bzqHfBlc`5uX2PkDT~NelMPXNBP^V+{fqmodEKo z94F%DZ{bTh5?34tAc!-2CX=anp&>LA^gsFfff(cd|HS%+8v>*sguJESq%#rsrShMa z;yydRBQ;U~FP&`+-2%FIVjLi!2>KPZ_!LtACT_3yuQ7f)LH{4Jjrb~~*`Gq{|5oVd zRCjCZ!8pce49NYES0VM!e$Z}7_mi;O`0Dad0uIURh1CD8u;U`i2mPoX*|CHDDjt2{ z0rD~RZ`xz$vaZf#;tPB zyWIC<{Kb~*aMp?DejHAnZTqi}zKQ*)K)LXFy18D_o3ge~@sU=p%YA&Vy86O)lTNyb zbXnJ1_y}JU$LMzA+P3Zda>4mbvx!^!A^nnmb}qYK^?L*2W`(=yi=lknJ#`$9Q=0IR z-#0HE`O3C!=V}J(`jmX0w)hC{`;V=wWAd z@+BSOK==IhW4-^!_tLNs z!N0QkwX+cZpCKRaqX|9I2fv&gf4I!J8+5$FhxD)?sotlc|Egc0qxfLIRqp;Zruh=wq3n zrnOYw<kwPFIWGYxaj}H z$@|LY&%kFnf^qg^d)VXXszg7quBX2M4(;l)Z_TkXE{4tjOUK7!~&L!KG`j`1%_Tqf?Z`rr7NJ@yeUSO5E& zrUd#;IY4dO`zkli(1Jm&4|3YBw`=vYK85ov%QH%jFo448|K^VYd8noGP1u{JKM4K2 zw0ZOKviVef)$1Sr3jK4O$7@1udr3Rn^t#+TJ9VeD&Yi4~4-ve^P&RQz*`ELi~Lh=7Iuz&6o>X^7W&v5-myGGew z<+u23b*Lvd|C@Xm{qy`^-`$_W=ZsoyCo4atReqx;u0c~(YF;((<8$Kw{Ej^7cEfSU z_<%100A6p0{S%it|F=})^WT}3&<9@QK@Y#ZeFyHd!LprjknJVimDS3xOg>}u@^FI? zuP4-agZcqL%-=|VsLr4NyWzNf7)dlen;pITQ!W`7+AY5&Zkhju5A$&~&=K5hDMxi3 z0hin-^FQ@VIkwE2?usQe*jJ?s#~4HPvvy#-)NK4aKBMlI`Cs8y`z?96frorhwps04 z=F3s^PddciQrSkjapUf9xDtsNx?VF2$0n)^r+?@r9!!khjq%@Zb0S*O^xody`dQy_ zIl)-)OjiHjaMd$z_4QR2bG&)tWF`29qRE!Zq1*YL0pTO^rhIaCdj}f z?r(Gc>fa2%2}OEKDbL>)Q2(TN2KM+VZS?NSRc>eftp5w&H<-Ns1E7m-PQ=Ua+>Yr# z(*il|aXNilE9YpjL?Y9T-)^VV!?=d|FI*pr|Ks>ijB>;CS?0}hoaJwn5jOK*-~hL+ zy>K_&HYj}hKo8=LG0Mkq;wJrAFc#{=Z@1fKm;3mf_&>_us`($~Z@u|^z}L)wfddd1 z{hv6Q|8f%ZSOo9wyDM*j{_QsMi^b!S?#iE(@cfVP$)`u$yMUi{wAqhjcP7K%ln>)) zl;d#Rwzj2`e$MA(i~atx`GHwk^t%h=nD~Fy1)ML$-<>lw0J}7@|XFT?~&GF!J%mAO7mEJ3aNj}jdk=}=s);Q7xm(Bdz4*Vo&K?2huu=%TyK&-{H=<1b^LLB$qsQ$ zZI)7e*v0*6`W2?pYVH$>|6}^|Q*M{YBT@4|h7o*6qc`XOR8lFtXY ze`o#^pA-MbG!oicIbE9>-iG<#uEq2;TAa^T^O%bN-S-0*{h#YtO#cb;qrBO|{H^+D z5jFpNz5bx!5jhC%t_R%F=OszRTqen0yMW|2M7+!hoi~1TNqe9jF+PHvf?OwInE<<1`#;!^yMDg-Ki9upuOk2D zOwTe^{|Ea_l1F6L|LI(2?*G+%rEEUz5&Ljz|Ibc-T>rA=`q$e3OUQkEPW&JCul%2Q z$Oo@Wz~^b!|54}Xxc((B`af}w$K9g#5!f%8pE)1j2|O6L4AR3gS?ya0Khj}bXwKWa zRNZoG|F0^I_a#Dyxa(&HW?|W0F1XpBJim25{Ycq-(h=Ouw|KYuKO#pyCv;#(A<`us z;X}UIM%d2llp}FbZ`S^w_nGEhs*XDQK|0in=uPB^ewR}Y7>^9W9RR%#^#A*>|AA#@ zUH{Iy^ds=^JincI{_UBj6!yu){(F|~Ev5Z$Dcf7h@7ZrI+dGB%Dl5uPma^Si_RYSNEZi7@wovl1>r+kuLWcg^%zhj&|HnT;uH@ zxUsJ_X8+^sf3yENdceE6bZ==2-&rQTG|myRCEhKiFHPY-iTVvboy)eAi65EcpUVF` zBe*Xf|9*P|{Y`N1E!|u?3S0`e#pevpH}QHmvFhx{XF=nem?NP1Bwp>KsiufW4J%i{~wJ0;jh#?_qUY(k&n#w-M)XmWUcA{U9cyV z__7Gk9qzF{CGX+=X%`i zH~eA>%HE8UPIzSG3FCF*Z@2G7hAH#Ej6VK;z~qAf=KiKFr8)n{{IB@r;pT4~|1tMJ zd`{>6O`o`t{(rJ;vl=H&`Rw)!eYD8aO6h3(xKAPX@wuG;BmZ3C#yBdt6<_q5E$e?1 z7yY08sAr(1^sw7$^bkMRC+c@ihV;7;uc>~+|MThDu0sD^7?+tpy0>)ieSG0!_N&NA z9EH&T&&#$X$mdR{?W27C6Ka;uIgJ1c&&J#hXX$mgyFwC~MRkeiE8WADtR56_uHd4|J7Bg94j=RRE~lg;h| zJ>nr<2MS>EcO;Uw*1uMStS&K||N~0>>x{e3h&n z^Zy)f#b>O4lq2cm^WUM{)|&pG!wrA*LgA28S*X&D{AubV93>ytGnf1LocKRJ|84Dm z5ce3Lu+=}xk+@8}TM#FuQYZg%Z|Onsq5O`+u+g6~yvB8&tVe&Vs;akuUp8y{zv$&k z^iO%D(`U{oJ2vbOQ(jr*|5GoaK`pd5jDCfylpY!Xjl+Ef`d8x!1`@XaJ0=|Z3*?uj zJ;WC*h!slzdrMEIF?rv{-=l6L|rj=iXg%9Inn2GWe*qe$2VMl3e{hQ$XV}u7Pj|8u+>;rXq z^FQj@l8<}eU3cv*?V7s^H{y4h-PX`RyGy4#e!JvR$Pxd958rcvj^c-9yNX{CN1x$! zOxx-`8}aZt`ak79>mSaaQF@8T7nt%h$am(PIdksfZ-nJKanb+D$K3xK!woWOyn#H< z(=Ra{cMBf+0jB?I(~iRM^Sz}=Bc^?s{$GlD8~Y!^r>AaQ{C|e;Ke6Aacs!4cLVeM<|zpOwXXY=eQ_N4aBPjKCyWDX9^id^PW&J7|3$dT7yD>x+@>6fi~diX zShgrW#0|aQs5?f;=f*YhN)P#CIi<1RnEsO@2g>ED^pA1uCr)n`anqFS@na{bC+=4e z2f{Xevic_-gpt&D*@L!Kb4Y);c82{aWdgA1WwQD|*-bl5W;uSvTqkf!XKz^&9~xjh z7{b9!;ZrF6)6V>VHN?1Yz&EWqLcL)5r|hgS`ZtF0{x(E8Y1{DqFX%rO^EkU|&H11G zAs_Ce(N3s;`r9tF<~%x3$GFuxA6U=4HPasVPT~5W&m-*3?kzKh@mYG#`=$DE?M<|0 z`(hC#FX*jy>Jz5_lMnmHyq({b|3d%ZbHqbFu%jXBf9dJ_u#jkacq10o9!z8uhniwKa~GlaxyHx#XjNYT>Q`d zKlX?F2<#tmiyYaS>-Nv9_@B>1&M76QA%7D6!MuOYPWi<`)xN$S^cVZ=a^Ew}pU?R} z{fYEAj^@iz*6rN?BQ7=nn|4%g#{EtowXD`Lke}1@^5clpXR^*3`we}RbDt1luUa2n zjs7XOGgiOe{)y91KNbHksQy8B&OY0SF}&r&*#9k-d90B7N1OyX;X8A*Gt-`_ zr`l+^Q2OtqpJe@6&^P;GZ27QrCi;W^;k$W?5A9^q`Uid|4t`Qj;i%R@`c8MI_GB&W z3;}`I8Ta+LPUgB9-n>PX4>FMK$T@O`Y}2fJ0RT1VqL@^<9D{P{nHLVAiG{4B?Ze3jn<2Lb@%qW`Ps z^Kh$vNWb8aiXZ+id^iuX{+FVQapdQ~ZvgkW{y`t=H}@H>`F|<=F{R#r05<{vp(k=w zE%@cn{|NdF$}0ifdn*v1LGFxadG3Fr9A*AjbfAxkxRo3c04N*?0P^R5(aUt;CLf;5 zqWpG3j;bFRx7lyj|C)&V|Fim^XlL(}{>5(JPyOfY7W10ogMsq>&_DOB#cmmI=-?yz zS1s)E(6aWq%>TgolM1%CtxW~k4%C^~cQrqyuFLOV*ZpT%6i3V_y|3rFZ}3F#Lsz^t^Dp>_H+gFXr@^BpJ_7XBlLv6@H@L~Lx6cp!e=6G!7tb4 zK0e2M6rm$@g^%zR9K^-ECBZonxAaT;DSU*U&=-D}lj8^a|NYYcy1B4ltnYWCMY$b! zW5C9ApBj5n`&>*Lu_j!{ZiUuy-%}Nc6T<^_>*nV6zmd4cxRmiFTi(Z3z9Wyaz0QHU zH}B;-f^>KvTfA-Y%zU$cs-jn5^^7(8(aUT&HZmUQa&Hy%lhBM#rT&v zvAvxo9pc$JcVUIY(O%7dhC=5&Z2kT~4o^Nk!F{Rv-%HUi)X}!n-?;uEeH{PslOAv@ zKE%V{kfV*Q6A54&zm?*#{c*Ti|C@Y?n=R|8vt|8nw#3cn7>|<%lxZioD4u8oglSZYoDv+r8flrx6gu~(${44-%#;X1;PNx z>8T3%n}c$~XC<|H@Ydt;OyVJJ-CP|94jKdOSJj23&5J6;|MS+rSVt~V`6f%ue3J{b zGlai4KGR$@m;P_@Njx$asF7&=#fs@#bhpRG)?X73n%5mR>ptw)70ng@NBDb!bm2w; z@_`>1*7+Zmx5M=>anb*YllQHg`+XOVOKAH8t8lmxbus3CU(-h%j_sdopWFOwGP$s# zp#pZT?*cuv*e6i?9|||z2)Iku0`_9^fqbwYQ~Mt~IPcQ`O*`@j=FfddtEviR7FK}1 z;eh_X?@9(x3Vdz@{5BLS`L@CX{~yE6ydB2#q{EheOFqma5;^iY`hUlL4HZaBXx-;p z9I$WG^+gpi4Q1)HN9L|_Ih_7!#DVbt0&$TJagN7b!hIW6M*!?ju%DEV)$e+dLt|h% z^pc1LwG`|ur3JMe7{7`zu1(kM_M82M(tkVT72Bq1%Fe)%`p-sU!RfTK>Z+>3>7Tuc zhjvs1wIR2|z6kcbDH4yZ3#`5duUT!<@5$=FeQx9IAo}qu(Dzk5+be!lDE;rW^nX)e zjuyoV7g4%a4}SY+W3Z{1I`!)Huj=(1>*ns{_?~JA{2Ru{OmLO9IKcCN>*nrr?XC%C zeggf_t{MX!_hH!zyKTyw|IPYW?^gf0bJ?%e{Ga0kddS0vKYr?3`ZrsS57ZOV%rQTk zc=(+7zqyY#R{!c!^`D8$^#6|gFg}z&Rk4WvjfxxV)V$ab`1;35kMi0w>FHC+D^IvdI3iP;6rav-Xrr&bD;`m2@)B=@*^FNBdc5un9q{lrnxa_zg~Z;VwG!}-{T+-j(@~OJrO7Q zai5UuOzwY>4&T4YxJ`NYARh~x-3H}=xURh+kkD|hK)X9YJ>0nY5%3}3rz-yZf4K?! zHHFjvzh8^#GT5%hn|8e&<4Y`Fy}O~p=C)yDvQYY`-BM4FaQt%IQhhi0#X>dyhQJ&* zj(=djE3E!^VqC+qykJmURDp3!%@2jt|049K;#j=*0O!v$`k95WvuQquikq)S|J>K- zepEZ`hx>n(i2U*XL;oW6?{*$v6xgRF62ThI%TABmK|AF6xBHtG1;ma}{x-&WS-V{R z3j}a~Q?Z)=`8@fo!&|~Q4l*`?j|1;L7opAI{14}64>Tk9@wuG;!w%`6D1QsP25yKz z@m2f&lK-+OK>z3S%>ViHwU|#3FQq^qm+Ml2ht+t)zoYzVQ1O|78|81|C%+^A3Hukc zD?T6OI1>1?j|0vNe}BW9bMgJdayR%*n>r2S3;Z9r2Uj#O9?9V*{r8gp#OLU@q{9NJ zje!O~_}tJ?@r#egFiLaqCGAAeU>S#_(O@leUy;`^v?(lPloRIvUxcK@{F=deO$JJXDpS^rz^ z<8$Kwp^(SQf3fOzS$x7+sE{A)e-oGZKhOU?gnsyd|EHM8^z)jw0P82dUn6~#KlQUk z*^UXg-PZXZen*G(kF7dlkPrRJJpX8}|M@)19|s!(t6Wv5IG@aM>!8<&{&-+${5$KG zr&n-XHT_@Y!}`x={BM2#&u4xAFKg95L;v_3{hxGj{0Hl=hg{W=m++YmPORs}zvK9a zjr(@u|Li~UQ{HTG{Kq=~W1j!@dSgLe7rmm4NKXHx7mstiS?#WZVK)Z0`)z1>y%73u z4E*^gf}oee`XBJnR;rfqav}BK4!rCitXPYJ&*H#C8q@>%6;}U{(>0Wn^rsR15k7_0 z|G%npnH={ix5mJaKh6ye>SZ$eXPgN$(hg(3VN1JX``^B0UgtVA|M#!<{I@7xBY58U zCC-=QzBhh}?|!2F)k)eLf1BTtf8&=WYx#T8@v{$On#~BGl5d-QxWC1}ODosqK0b$O z$su%v?ie4FuizjqyiSQ<4!876`YC*VauII4&trdn*)zU>*6&-_{`5Xf|3zcCP5B5t z&f9!m__fbnzXHRbK8AZ~6aW6kF9$99(wf)hK0b%>PmKe-U+4-S(Tm_9F8Kep%i(_G zmuA02j?!hGG1@n|#=>Z{j!eZ59q+{QWD0tr@}1dDWDodH#`d=KL?X|HAl&qCFTACx2a2_sIVI4!h;PG_$(7uRH<+`R4G`&Gdiz;}Gm< z6n>9m2A&c6qjmv)J8Iy&=izLf#(fOu>TKxZyy(BmG*((1EC;IV$V+4z9_U3>gJ+-o>|RJ8K|}_-B7uiSwa}J zt$f>1YS&e9Kyb@&u0$jzOL(guJeAb>pBOt2mPwY1iL(>nqu$L9%8BrJ~=k)<1B{- z$pilRtJsf7hjI%(=x~zW1@#EIKl^n4D!u>z(og@$PU7&GYr4p%O0kMGyU=)$^$0%@ zjsq;m?_~dHJzgxg;ERsSeAXl7V*eL%V!=iIlFnoPU-}tuT_gR188cX)lw0ENQSN_2 z|AKDR5ga999#HC$0$;ZMtt+p8$Zs~LbZPhdHKk4!^_Z2HdZqMFd0CI5{o)*t?HT6S zS+X9ll>SA3QB7v*-4o_ZXKF3%ZxZ#WW`N(7(Z8T)u0i{i^@aM&vKO(w5Y~9M!j-y+%n8ULGfXfGw{F=ah6#k1w;|Gq`+|J{5b?{gSP9`HZz$MfGd z@-dstMy7avLadu855HsoCmlSaF6{q;cs-c4BU zR{@|4?P{m8b2|B0VE`)SA)Rldf7VZ-rcNMV$em33May@HewleC^bfifj?BzX&`q6g zDI`CP%fmH{&pURcOuv%)kAnU^;A8T@asVmcm%7sWe-NulyWN5*^+BvRvz9U~Ej2G? zKH^^~QZL_D|6(4)#4N@e`u}14k4P9A-UNQIGftO$L_0!5Vu~=a;{2;8`xpKlb}Jdd z{U5y_{qb@1#~sVr|8WY^N&RDWu!DN3sOZcL?*I6^Xs@(?Aw7h@)%}0%PTX7T_AgSN z;QpVPsbL?%b*p9x?*GtI82N13q6xWV|Nm#+KW9C_Dj(~X2mI;j8peOF|Ftx>wmT8dh21j35sPt@^(gtW-e^Y@-2dT~=b`@b{1@my?$5BzPobV>;2-gsOqyNd zzF2P3`{(rkfPb}d^=dEV=Xo3JEf43cq+fx7``hZD?aG&T96p~b{Bd8-NI3^SL&4`k ztTQ8U&icQlf9id?F~Uqf^vk|d`scWeYg{w+5^m#s^SIxYU^0pPjPxw2mv66s^!L@P zjaA@xuCp_Pe2iF+a-9qJPpjm^^&gi1qF<&%9O@s_NHy2Zn6|`wJy=F!9u@X4ox$sW zEY~|oH^R*E@&Ug!t_u2p+@G3e75xdz*0aIufAZlvAIo)VwDI_2Ry z80&6rKk5a`fAkmh_cID`VIJsTnDe;5Q{%f#T>oMDkN?lF|0y^5VEL~|xmka*9w~S5 z`XBN*4{?2LGJy~Hb}1MyG2TSGavt-a)99DObs5VAum4$(q#G&(2IE3W^?&<|~P zt}menr3&@;xPMw+w!Z$m0{VZ<|Efj<2(kVL4)%KsQu2+09n_W5KihHl`l4_P^zxuT zA#9=AjC}g#Tq*sZL;XaU*e|ip*vx*3b(vkSui3L^;k-_7XFRt;p%S+9cjS3*$KRi}t;xqVda2~I<4}^Im*Q;`^kgdYWjTI_YwHY2 zhxb;bcb<>VSIR-T4rAhya-Nr4$02b^oRZIbm&lFxKFA06eL9{1zQFJI4^)bWr*i}H zmk02aAMLJ3fiK>B@=4a)J?@G(5Fp8OUhesU`tb$m%T&*o<@jB@YPCu_kXz7|d?a5f z2j!x@!#Byz`#&9zUXK#DtOr>yvY!4=|NsBiziema-tv9iw=qTdTSL4zE)vZ)FD@p< zi{@0wd|W?c94PnF{^JJk$P#(}1^X8}=MANh@xRa8n;`tHI7du_9m(yxN0x9Nk$iHG zreN8vSW>*3M}m(k(|E6ozYVe+zr#9O(1|bx?EfqQJ37cC_=W}IeH?z|APJvf_`CMxxk}=V|*jx-`Pq3O6p(N%bE1@qtr`1^tEFi zfL#&&qn|5rliAd*WdDahVQDUK*zyXM9fvG2YLxjvytgn8$^rcy z`%)4ATk@g2q!*A|+(&{=!2Zuw%6!Vrev0Kt*pWk%SMmOX-^2XZ&i1<>8bLdVbbt`h zDCVb{o5AN0<>tIC`@iG^xkJYP=6CG>MW2^1@3-P^d(lyh%TBf82zsk!mO9Ju7I;RL z4x=2n{*R(uvj1bbRVd|V3iJJd{hy5gZL%|;^2mB9I=bTzsbOI+#Czix(yr{tAw^l> zf*mFBA+_mMlh`4sKLcC#x5^E3Iyq34jF!CSPCb}Ol5(=#jzi`9h>Pti&7~+i_F3RB7rUQ&7weIu&oyEp;@paJ0Ep9T z`goJaNkkMYl5zAxo}5I0W2xJMku0 z)C2jjTpap~nyGBgZM4K#Z0e8Diz1CtVHh{BjQ)=tLVw5mFGbLcF=5(~l-+TWmOS-G zagjUr;hA;ye?$LxE(7xb7G>x#S6u&?Uu^cgtfI!a$S^!;NBwUwCafo)E2ICE_kBKJ zUOePGT(0-U3XT1Lr#IINyM$S?9KQn@LFXXaKk3qtp8cMNYvlVv;M|J%DHr=c<%Bz4 zGTWD;yqtFAkiO3-M}66B`%OitFBdwH#7%mg7zZeCx7?sZ|KC|CM?S0{-ha>!ru@)6 zVgJN>PsRek5>v!|Qq+zBpCjP&o%PqD|8x9LOXEHrWUy`tk{k8N^#pMuITxry%}_%W6B=m2h6 z53HAP68xOweFyY%ir>$+y)% zPpnk60#AzRILPn1{W;vv{IRfbX_3VJZS~Lo*xYQhb9{k!fy#AR^ZHn<53ij5m!Ti! zVtz>&ePF>3jGypkz`70oKMBTgw!?o#|D1{EXNe#Z}s&*4A<`8t=qo@^VtdemlUsSOg8uwj!f~= zkEQ%*`MyHUk0 z8~830>04j`DEagxcTe_D^T9t1c0?)OQ^lPBi$KSG*kUC-?_jU z9i8jl@%tKhnv%~I)qi98zRi%EIB?t$#!_M-f=~&<~ z|4QngbWNBai@fE_YuLU}kII$MKh}+m|9s?7+A5~;I7eezvrRbl@!)Wvj&|I|^(pD>z&yp2 z?KL=+`LZ0p%gCq-mvl%M@xc|zNAi_&P_6`Y+#;_o=Xtqx91@qrS?=8`@C3F=U5Ef24Vjz>n9O(asDUpU^y;Q@N+UB=cwKI z_#Nn^lMd_gV!4SA)0#>-u>40oG>G*N`QSW8$d7t#?YAS*h4d}r0Y8C<^(b-6dXRGe ztNOotMh84STmwcRTxE)PM4ES6>(Wtnz}}_Z8It@#DY&_cbHw zL;ufRY5hyNhwtc1y2+nLI9 z1n%2KIqZM=9r=+C`cXukHvBzRS&H|6KC6X2yLI`yb()gUPvPGwcc0qx`(N@C=V(Ii zQ;SH4xX}K^{uk{C=Lo-FRS4XDYHxfQdaX+T1pNedd9Yt|bt+5L7VW{>93`o=6+H>h za{$Ls7y4Tm=T%8Z%FT02DL3&@9;TE#@)iC31Eb2zVCQ`AUC>k2h`&Ss7zbXc*D7n( z<;$19_paza;G>u0caje4k@Te8j7P+J z{ExeAEyRR7$=TX?yzs6e+~8HF&mfHX%R1nyo(UDK!;9?~H$SW9>A*npvpSX?MA- zct`q5>HqX6LtUjN=!1HBK~*GM-aqe)c}C9vc>deY`bYCZJG;xpeExnB4R8`lav(4i?TG%50h<=CEbYc z`}^V*Av4CcJ28&gG9q0!)@oR|a6K*iKjr2*p^E+{^s$g0E2MG0HJyugp~GE-G$IesVmKkG4AZe3sCi}8s0tVhbl{x9Uj!sQvg zeiCXv>5F!yq8&ekbySpV?)!-tFVEu^^@9Qz$SvzpjFUn22)$jb|2i#dM^TZ%Fb?&F z_FLP6@e}?ZmiN*Bv-}+$S4#iX&n(FExT{XXa~Wyw_xoH?{r9O|c+!IQRfqOvOIvD8 zHAHZLv9dZqLay+iI&GwF7O9ftnjbD2g)C$!*qR+i0nrSuORwd{{h=pkL} z#EWBzSZA2c&z$a43-_ON$%lG}KNZ%?uzx@Ycoiw*Nb`4TeegT-4T}(tBfPImw|}8N z?6XW}rf6P;l3yf#r)TK>HliXet#9qx!1>pjZa#4T(c|Bua^w4Mxk;b( z$Q0p^BO=T9l_cZ9UGiZ&qWw#O|1MWv%Ibtx(8u(@f`9jTmM-lshwskeLV|Q6FaTaG zH-Cd~cRf-r_J4lwI_~i#y69(Sw{zTAPG@9nLc6m87yoW5wOAw{Sr4T5ujoI~Rp4Kb z{-|Lc6NU@+C1_{h^C;h)Hl>*<~V@i6#f6sTKIoreVgc_|EJUo+s(Jpe=Ej&m~EKvtSx|F zR+xc&5)vY!o;jK5g8PqX2eN-)niTyc9R`4G2apf_i1Dv3wSVbTJ4)EUP)*&#RwMYBm9y&i z{fREV%S1Ua{Y6nO_J8hUL)*WYu^-`iWFfv6>j>p@j4$KHby_!J{>oOifY0Nu1ZAPx z7xN9Szm>rHFN5c2=>KQkIWL#%(NrvM3kymK0e3W8c!(l~6;yB#QBk z^Ns7cUSAfA-6V1A^z?Vc{uTX?MSCKS0_dYKT2-eZO|@ek1Dsb<|4V=)4C8bi=(F8w zz-OOz<@8T^i(mlQ3Vkdcq2uURsH))W!ZTy)mD2yK-oB!~reVFr`r^F2bb*co%g8IH z{{?M2pBB*H3_k2H9GKbusDIhc0(Jnn-^Tcle@xkrxGt3YO>8%Z^PGt5(MZ>t?)5+C z7w%X1cdjS69~+AG2F5k4m-T&nq{|p=|KjMS{Yxjmll>pK6O|=z4c0%V!1B1m>gr9cH=p>zzeR>9MTUR`89EcAjB5d%*vH|NgEbwrBdEx4I`Y{#SUt`+v6ZyL$I@*gYtQ zI=7qqZ!!N)pMHEa%P(JE)y#Z!qa?_mig`V)&V5xp);*(12mRf}az< zq9}2X1nRFB_*V%&kBw?|W7@KZ#=q(9Bve4b+wqYx_{a9}Wp$GC*0)bBS{xWRBW!7B z=V2VZZfELF;*7>Py2+go|Fi}BWu!`&aR~DdqXDqo`r@Ku)^l1yL^bJ*Lj$OHf3FV3 zMR~iWWr3}t-kpK<8~1B@HD;WjZp|-h-rvPE0S$n1(;n&Tng@n;RbLeY{l_3aw7`D` z4S?lFqX95&MgyS!lh6R_-Pha)Gg;{Wfnn>`#r7i|7a9P|!Ti6PY3k@$@IyP!&gyD) zm#!*A`zUxjCDLGME3b2>MjE2Rl~DNWL7(RZKO06Iwke_T*SVjMu~-T%o8JD*Kuc)e08Mak-GtaraPuz%maeTegN_*=opw=QN~E871$7!H0jew-U4 za0K<8lyv;?rni^I#Khvp8ozzM>ZG5d-!4W2V14l&YoUKMfI9cqMbT&gb?pBLtXk*( zWZ)1O)-eAt8i3G08UVlJyVayK4h^8*Jv>!G1K9L7I&+!M=c_YSD_Ksyqg_fP5a4l^i9DEzJN52kEJdDi!h zh+iBEf2%tpp6#X8twc_*XFBff^3D4B-R1DVJF3n-1p%4s-NRCiy})0G@nSFPS+xIN z;O97p`0Xm&yJEGf#I4}H-6vLcHSyfEt7&9Ojsm~?rg^Ihkk&VyTC@fI@27Qh@)d_e z6Df|Dn7>or`oCXA`~CqB zo3HmjjK3Iw*^inr05hNcPdnAsU@Wk1VEK=iHP}h#eE-we->K7MW69TMLl690S3^fl zvP09lnoP;#2Wj}7Z9C`x-aBjZ7cbW3p&u2?r>0(aT}#uNe2zcl^Sr}jB%d$;J|m6! z9Di7@sA&Cq%0<69(it}{Hnyt?-enfP@7~pPlPUIb^2PAq*&F-~)#e)VD=26RjUV!i z*i#t`JPi#M4YNYxZ|!QRsaZIdIDXs|_9pAWihdUoKXB}sId2~E1z6ih`&a;)SU1R;>n@ziE>b+NYMb$kHz^D<#}&+HQpV^_h-MfG9TSv=--J3Aj+fRkd6rx z5alt|bP#`o5?zs+rm$hJ_CnSEzwamC(;NR77wpaL*&A<=6q(6H~ zC7<-{oQ{zAQEp~Ky@%yz{-Y~2e&VPx6MxgZc~e9^YryZZ=S}N(1 zkEdQyB;OWM-s5R$B7Lis?U?+|Xd_E9G=rhZzcxSTEX(WsynoZr@w*ysLOF*+PdhuA z&wC45j^A}uD+=i#Y?wu-+tH!(0YAalYL#;Q+u;w?cawH)U7YDyd+K*?P!T9qk%GHmqpU$+axobJ|lQ8}?`NQK2?d$gXAy?8L zeS1j<=hzs3*5seDofYRl$5W5TavX||ing864q*7HS=gj~nsW7j4%~Y{`%3HAuixfS z_@DAuj5_@6kf)hO|775eq3{oz(S+!gs_7{|Co?!4RXn%&f-?Ybol3+-V1 zSjJ=D)UfC_Gyti8zxHmXU3tMqy%=x0F*+Fk4m1GL$F||D)PIvU;B7QB<-c(ov90de zIM(}??CfmfPe28*{C+e5>M5@}A&GJu&;XwD|1duNs`eLN_fME@Pz+(jkNM{e^*$X9 zfa!8H0On)F*d_4*%=G z-@pHmGym;RiM*;$bZGqAT-YDy*_*V#jOyRt2z))`XMJa(0r>HEtRB&i8(L5&hRlOx8~>MIF*4XPvsXBIF&W|3lK-#8AZG-CsXFbjL|O3@w<)=r$Rch zu}+tytMjS%NWNoEHsJomsf;<@0Do?z_)UHXsegl(!Eszs&gO7jC%=Jy+HqAI$DH0e z!{Oj}TW544@GSGWZL1s>hth`5VUHuTRIG?g-ngZPH>-dmIal|-PtrZP)5y=aV*>N@umK<*Yyd=gEdQOP!}Z^9!3XC* zS{?ahPn}1;7=MI4@a6E6Pe=5WDFXkJ`MtwGqQJ9}_|NQF6AJ$yiNB^MxrK67HKzyg zXNAIls~`BQlQxQaTeKiO6n^5!sWE#BG}~#l{!JU}!2rKw->Yk|LobvKPDX< zuVMV<`Kx|z7aKc0aQ@Z-@kwHVt&Vc9QAq~8o-#- zZqSL2X89fQ_atQ@z0KBnnE5z<4xB$12^`!vl1^;wxN%vai(>?{2K;mHs2MKwza=|M zwExTCCvHRelw#_$`Cw@LZ1;)p>>0sy#oApV@&6C>Fm`NBO&#RQNKe0^1u3?F)=>C~ z2k$&b7l040iO=;O|CrM=D@@e^{MpYo_g{?gRLZl>u=B!w@?!qZ$-y{@^_RhL;J45p zrtKWIW26OtKDK2xj^CoQnn#Lva%9SUZ2zGLy_`+|u7h-37Rv@fx1&SnBlv+2_yx*) zZ2EUrv={Qpx#gp+v(N3{AO1}9$$V^Eb-4-(lv_^w=zo_@x+v!eq@B#i^0P+pK{rj%j`m|ik#Ar8J16UWN>Dy|2Jp8>MQ4e7 zjLYFKYiId$4>{UL%)-lZ{X*lX{(O05?QJtr&%;CEryO_>!u(K5PP;m6SgE7^wt

KfpN=d*%W<^7ycFAiF;4UTkMkqnF<_eN zybk);?LS-FTRyiqlad|nGbco#JoDNAS+2;r9$L}gEuj8+|L15wkxRMy-cr^Mvl?}9 zyVlP44_FS{2D?~CYJu}-Gyuwt`Z1KDozcI#&nQPb%vV(6$NXcP4-UBgu`|W>PZaYp z|6tshIU!BR^S6QX1JdF6qaEwQsbY?~{?itm8ag7ooP*xv zJ~kBovXfm-oMQg4xA-={5av??D?YSor(%d(}XQ_pOF{4V(Zo%!s4 ztsjlwR$xtx7<_8Uwq3hYb4bU92Eg(?-M>5jGN{Ttc5HpCR`*7FdTqPllb)ecZ)^bk zF4+E{?u}Ez{(!g#mwME}r?R*GCOvBk^Lw&CARRIOpuLz)9uwP*X|yXg+0*6B!fQ+% z4|=jcIFG;1nG^Np8Ge^JWy;i0_>)hyI9I>(&O6%4P0uZ>u3j4ozxGC#6Ja!u6aO9f z$KTw4hr*xi&)&Aj9IPxc2(wq3KB_kV+1#&2^(dpz}Mm-80FP80b( z*&mP&?GIQ_y#H#|Hf@WA9c&KqXIF0tg})5=r$hrk`p<$Ty~IDxYApkwT|%y2;`eXb zc4sQ=L8*TnfQG`)@m1glt|LCHH57j8vBR8`QxCaJD|9|tH~=iG7*)di_p*usi*f(% za%>zW?%$vJ(;jjE?yb6JG4J0YPlO0m_wTZt z_zu-ZI=p{(fDiBA%PPKH1b(sP%lm$|bJ`z>6ay!5)BfPvlClcgA2=Xaj-rflY@A#| z`-7YyVv-IJiW)S*AwcE^&J)pzoR05hGMZOOEzK?#cU=VQ!da^&D{2YHA6~!^@d=}{QYS<5k8Okd51nhqr{Q~iSFNc3zsiK^|^>AUI_$3>$ z{!I^sAM$L3|57ROk6yRV911_>!16o6QK2Yv@;0M?zOl+s{#?IXH})@)=dXBvto!~Q zIK=(mEnnL)W66?euL&3#iziF9nl@EY*@31_wQXBCJQ?ON9D_lwrDn+qv8XU!%AADot?~IsKNd#P>$d6{+)Dq z|E|;R=(w1lwn4W)Xera}59Ieh_%GOhIrr~pd#60aP5XmZ@X6L-|Fu@P2aqZAYqY#P zSx*11ql0u@PT2oQxxk0^2a@l_^8CBu=lbWk{kWNF@cnz&hJT3nm$injwP9y-I$&q> zm}9~GgLNAw7UTN$lKXe&^Zp%nIU76)yOtp>Tez#@80lcx$NI15`**FZ>#?MSBs=VX z%BKDHj${1o%R3x#>)M{}52$Y}Ka7xPL&b!7tC?ozPMXhrjz3(_2iqTz4yJ#T_Drg{gZeXLeRjM@alAR~_!~kdJl#%>0n}Tf5eFbeNNYW36XdzqML@ z*IKJJUHGeD`7P|IgYVzF@t^8iYnb}H#&)p3V6lVvG5%h1|IU1jze%j8zN^P|QZBoC z(h-cmr~7ve_!oA-z7Bdcn}%x|<;=*+3C166f6%Rew6A3|_Yi;Cl$rU~VEn=M2i^Kd z{hG|Bw67||>z_H)|4UilY=6*=|8HGonNyF@{%yn5saa}B{H)hb;|SE(V`)C$nO@^> z1^&|OmTFC1Yw-|hZ}4w0s|8!wZfw7ummLy6KC|2e}Os`G?ATPt5Fru{)@fA$a4IS{78rP2a>MN2X=D-z8A~$?}mTPQ|?Nb|EOClj}B8ju0nTZ99F5}hW=%H zi{<(+`2PK5Wttd&w^rVEy<#7DtDC9u)`85I>%ZXpchced&sY6HSsKC-G*sSjy%ODL zh_8BgS@fAR;-0>z`*(MxPs~5=%D)VQ|3m++l{;gU@IHO0U%CDZwm)D#*MD1C-mVme z53jCN(#fSE%3}K2gv9TzEQ*8z53V7< zp|>`L!v8^;?{)4!j2q$<*LFjvyYlv%asC~4>c3vbdGMw8@9ZDEe_sQ6zSBN1&t17} z?01Yx0`q&ie2%xEXR;+?CkOuk$(fl|SpYZTWWzP?5 z|5Km+Zw)(HX|qkSv0r2RFYbSW?GKpG`@gNg?~7SyZ>UbazGd&a(WKLT|JQ^4!Mpc2 zRGQHKPgTDakJlFFo~qsvgLintL*f7BSa&7dQKQ_IR}IHGxgj+EW!S$Ge@f)7KKt3d z=noga|FS>G{zBq+SN6SUbDGk1vhuBA#;E?rQ21}Z85%LEz;na(w~in8lTi2@Dj&x9 zt6+QYU;ljZoJ{{mUZI(y$$b2@qD`a_5K)tjW)I`lv7V4#WjPcC|yJy4A2y*FsdXGPidJKu5>;9hZpI_1%MEr5D=F~bmqNkqIUV@!y z*3{MhbpiXI3-8~V&;IAp@JOazOy2sxh?%%heyu;x!bqe}7r0Z!$7WIYW zKXLxgI4WGH)BfNkZKRlgUedf8@84h2zD61~g!!C*ST5N9fONS2*X1XlEx_?^Y&H09 zf&EV?{O3gZ7snBo$CI}x6n>pgMZy7;&&hF}3Wfh=lw0U9oBt~K6mIydsPCMR__yLa z^XqntSA6%2siE*6LV2rd?$G6PnS=2o{50-gFT8)>qCG6`-@W*5%E!;)t$;1sr& z+F#w{{X6q{|3|sH_V3@(i8OQS%sr$7{kus2!uxl(xPK=8y=H(L4tlMVJW4_dXu>Aq)K>g#oAV1pyabP@({ZLz> zoqOq}>?hW{^Dl>=^1#jCL|pZ;vA2c7zaQmdt=0mzc@wdX&hmvYBqJRc8UX3y`bXH`!~HUr^FFR0 zqgF!iynp{1dg1+hBkBX!KONLtPxc2=|GHcr&)2|1y8wxwbc5{=NQd`-dqFpW4lmjv z4M(a9`Ce#$&@=w8(N4l456koZJrw?f#P6|M|BCN+X8&{ehZd+R$C)hDcPRX9H*sjV zZ2xJ!z~2PAX6WM(>Y4Tz5`VvATiba5KJnOX^fUj>#J1nT&PXwg@aX-I^%?B{KetW4 zf1h})T=>7QY3p~ax%q#hn2-K<$^AR&p!&y6Y>UVQUCW%d8Q?Q?8o$G{)!F*`&k6fe zH}-qy{r~5*C5iFprenn^^nagt>`zD)!`x#c{;pX61=}AmpX1NOV>+K7j+)a3n0C^U zFZ-CvHQcAuT+8^|c ze{0)|&Hej3^Clik;krIFej$Hh+Qef!f zZ#~_=6DR%uCjy715FCb0Y@`1>^Lx5~Cmr^`iN}ft(*OOYW6ufy_tkALRF#JZ{GWTU zKcL(kf99~BvHzRcRxbSCspp>T517yKXJT8C@PD7%wj+-I@1)Z`{#@Yyulv8V9rFJD z>W|_?`~&{x{d*|j9LL3; z>@Ot#-5=aAit!I79?KQ+4?^SrCHik3^#8+AjDHXc|5oD10pOgrzf4HLLUUr<%$4;2 z`Z4v720;0O{r@MnjTH0moVJAN^nahzRxbSCnJ?$x^+Epsq{I97iPXEo^1A;!`R3sM zS>VS57)*ox|3PmR@Be1pGVvJw-*3BRVw(;3GLw$^0{+KqF7W?nKJWh~V!WXLyTFfy zHtD#~07##HBTQ3+{Qo8Xn^3=uf56|oe-DLUjF+r0^fSgk2#Fu{tBCf3L9k5clidsa zH{61nE>+bzZMh=;K`8upOvgxzjmez0PkzDp2cht@o%8;kcU0+7H^!{W!S8h+G|Z;|Kg#FR{=n#oSxozbf8gB++8;dn z58soBr#d{4zQBCiAINgzJJ=tP4($&}w*zz~Kc=)l2!%ht(N|1)_&x0pdW#?Qi^;FI z_@z9(#ouxC-j$Bw!^56z6!r&7Z}I=+MD>#%)U)Kr`M0P0XX0l6E6`qfpZ@P(wO!jt z|MzW;{U6coe=fX#XFmJiIRA(H;Qu~)iT~!thKh#iq;tOiU3&liX!Do*=>LB1^q2eS z|6Zp(*+~EQ#<%)E(v$tcli)-9pK<;t8|nZ41ElnSXMRui2c$#$gFhepav$w~rZ#@x z&--`smHzLS!%w*w|DgHwhx-=v0{=57zud?82j@-xNDuc^Z7J>8CrW|DNvO z*^hbuKIYhzM$dC$9ppp*cjPaY=dZ!{@66}<>wPD$ZKVG@^|EWvLX~tbcmLk>$%pSJ zqX9IZezI}@_di#E;J>yJ{_mc~w?;0O=g-a{`-71sQyXD^X#0Ubzj5ZC8k9$xpRF<< z(|>}%6XgF-Iy`?K1H7u)oI^hI^5?5x?rZmA`|*wT2NM6e)A@~vf1thzTs9bhg~I>l zY4Ab(gCF?OZ}uF{358$C0sD(h+G~vi5dYw*=4%@n{~#3pMUaQ_52zpOmp*GK{BNGV zwvq7<&Yk}K``VjT4vBy88DBB|_`6eIjPUEf{>%O)FKX%O?AN@1CvM)q=bSlNoP+!K z!M;(VoJ^VDf%|t^PXDf>gLG!0p$rbt?dB8U+t`SBGq69*pK#w5XS{F%MQR@fg5 zKBLLr*(9nV$pu16fXfM>-zZALw*DIxgmSu{=`Fe;53N z&LsO72XVYF(n9}t`TN}A^XG5D{{O6BOuxqQzCI)A|IU>D@66}=@8bJ+(!uiIbhSO% zR|^04v3nziCiyJWOfMw+c+WB)>#@T<*dHYO^2PfPq)-3%@xF+m^ncIx>G79eg*`#A z|3CBD|Hu1`_Ch;6Y|iul4%;~;G=Ael8BRqR?+X+04?^R= zDvt3FlFy)?5&z(u@N*qZ|Nms)PY+^6TFCmM|GTJX_`e6^559j7)<6B`hDiFqC;Pth0{!2KAKQ<^lqcB!;Jp5?ilhHKzoY+qF#cfwf2sdu z-+;&I|4zB+{~nA#*#3ZgvHZs0Z+Tb8A9WYwAB^|)9mDtsq3|c4iMBER0rkT82O;tM z#<F6FtHUpH=95C3NP#razg{{MT6t85uqhiA4_+0>{h znd43&&7L}y^}Pk-zwo2NaWYf-|1*Cf#{ciKy!lbjGc70Vs%=sO>6BvpXM5}E{(asP zE7Ed29@8RzSNv?crtQXYZbtgP^(%8Xs3ui&{|L zu{fRiHG%bCu>Aq)%t}q2Rb_kgQ{KN<*~T7FoG(T#ziZD!2tW3X_6HJw`}2@1{5ka* z%4fBO#4m8Ds?Lo#y`kBfbxicplRUK3;b`k?6#}sNi&;2MS0uI zNult6@X+$R;D6(MljRZr-~#+T_`mz8e>8yRPjAY7@r$YDD{YwvqN4gly+Zw?0Z^a8 z_wUSKhz9WeQ@d>mckD7lF8j)5yQY&)DH?##e-HQXudJArHW-dPs9$?}`u-c1_&-3J zZhd9doZMl+n@I!UbgMK2ddzel%CG~8Z-d57Y2YJKl=ZZ&O;BS zrv7;k>s2+?YoFWb|1R*O0f_d08T__gRkn@@^^N<`&TQ$Kwov$4ZWqQo@24NwXU?1z z50tWN$DbbT59(7Fk1bU0zPmN`MSRzET>oA% zgvQ^&dz^F~|22uB@l!4f>g$)lUuy3ye!ZTv`amw$bDz-oUqO6rOJRNL4G=Hf5E}pK zVf26BlzLmF;Wx{R>QlMO3^%Y}Nc{)<|N9oT3jJ>a4*I_n5B=YnFZCaM|4us8e=Fp% z!2i89^#QE^Evc=kPY%QJqPYL)>Hd9Reyh-bed>%zxW9|~!nHBJJOBQ8u>U{v$-h4J ziFgZ;Z$i7I|2yeO{aS6pL(0Z_y?izQ!k8v@NP_fD&rr7 z!v7-5G5$e)YP`bu2ZQe!bn}bR(c&KSa`?BS{WJbSU8)}cAQXPKD_r9jQJ;)|5DI_J z*unSk{{43`t*N|!=XikmN0InBKL-2%Oa0fUz8jN1K{}7i~tbl^?!UI{og4c{ohGP z>R-1%aOVfxA4vQd|6&;bpg#5GVZFgm{n?$#$@Qs!k74|S(D-i>?ea0yGwr8V}Nk`Vde*b=9{QZrCx5qBYv3j(3 z#CKt>;yX1xrsV98IsQ<-VEcoZ#oJ>!{{+fMZI9LJ0W*R5?Efqu{Qdyxi1A04-_+V5 z__)Y-dxysw3jg-R?XkGF8r-VO7ZQIAl4d`mE<0S~dvzLgW9NC}$>) z9E8yhg}_1@n7iw?-udrDZdAHG8(?4|2yS^{f{T6Jth- z^~d-JNC%r@U9sc~KSwL;x2O2?jgRR4e|v1pJAE(!u|IPGJhDXU|HAus=2QO|FJgIL z&33jY5B6N3Bl~|(_wPdguuB5&!FOQgSvMH%Imgp6G8li*`vap&g8Dz~0;tb<7#Nw) z{x9?&WPd<9-TmK$@*42Jk9q^2bZbXVDE!1x!SA4dzMB~m|Ay_cynkmqa9Bd)ryL$n zPBzC`8}OjMf5Y?VQ21NQFfI{4+6&_!gu>5yVtXNu(TIPrJqdVJRjqzxMY4i)&i%8P z&Ta_&?qBj~QU>C$vK^`zU@4DCA9*Pm_y4w2i}mkhIuiM~|4)$RT=NJw0yM_S2ywRr?!EM?m%gL1a*v2Qwa`HRU!E=WeSuQ4kL-Lh! ztkH3Mfk{m4w#o3*$2Wj#y2QVuDXlvCp0`iRiWqY_t0{EsZBJf4}O ze?|HFeKUStpDU7omVoNF%u1dfMgR9%$wl;k$NKm4pL6~d<1fxpI8QSE{>YLQ$((<~ zuU(N$|97VJe`h}XAIk;D-zOdRzZJ=M-eduzS;lig&c{dF4(jJGJ>9=k4_to? zOV<70mqyJ>MmNX2I4ik({t0@2fcYGMgk11{zdJcTivI7UbAJ4})c#;a@_!9cEEeVN zI){_iW2!>^_P`^Z%i|Ap@lFrWH=9`exteHQA0{_mtC_1}~KzmOv- z=`cn!5&yuMy!gV6ZPBU#UPCl^IA{=ws;SKWCz z`-AiN6NWJU!7Q``#y<#!e+K#^;~zMof5txuh2K{^E1CEIG98Kb#orHVTNkUHcz?$a zzaRX5z^}gx5a~DmQq8g1Mxnl$FH@1yOC~`bUZPk1xJ|XFmJCM|;rkF{|n!?IAz?-$@6<-X-_% z^@Ow<2oO9YQ{n`upd$!?wD;6g22KoO4+aFNh9RDBmzou=*!N4KPHGgI< z^V$C|wm%>p_W!RzS5<4^XMq&{?`yyp{_lRu@mUY{2NFN|WUNpWeh2)vQ25WGoX5Ot z8Rc5Ir(#(s{L3K+;u0(*{a@rxTJ|`8FU&k!5eoky?Qwt2gn4_IX6H`I4}~96X@!Lf z{DoHd7b5-v>)mS2Xea)j{Qo6>(x?ABaZQH*docds`**4TS5OY)ulW$t%uHK$F#h2C zck;#k^N&_S4!D1nc7cz{v*B}oXT<~*j6c}^K%EAAA1m&{L%g+wRA8dah_5U); znXt|!p10jQjc2h1YEAXVET$j7 zOmFbg&(n$Ve@`*}|2dBH-k$WC-rqGB{IS2N zI83@S!K5`R{^1#T)-B{omso?L+DR9;d{6dH-|!Zr%Qi>$BkdcY{~=zfAF3enJ2D6z^e+ zk~G4=e2%{?AAJ8#IvjrujfDew|6VvW#Y_M9@_psr%iX`nd#@4iPsKOp&ZPf)ymxaP z{olj9lg0dVvHbz_Ise3a<8V)+95giA2h#tYboBYBXZwR4kRu^(vopSN^H9b=i1*@a z+?#~LAKzFQ$M^^FUZjYB5DNc}L*?Em1X7LnLN3HV=rw*Xi6!UEsgW{d>H(O}zhZXtYd*|NA-Ue<=Om*{`|(5r5y%*!E;0${A2T3@P)W{~B3N zen&b`zl-HbH?jHf@>2M1NWOm$(3h$FKE=CgC7PA>@cS;IY_6w|MhVH{yE-tcjTB%U$s4i@=G_oaXJy-tLdxC>bT0Q>wU3|y<_31lrIY~bEO=UjEAD$xw`~Q;;$Dd|F7wfXqLN44~*<*yV;9Lg8O1a2wTg z0#DYwQ24znEAR}A7m z>Emzk{X6ri|5t$D1O=Wu-KRDyf6^|}k^1lH{+)E;Zf;Jj9eY}N=%K=Ks5kn*vp-1v z2iqU?b)Dk)V|)g<>HprR_LKJ`$UtbsMSKNR0{1Yi~jG8Xg|D{kodWt z47NXz`mfp{+u5D2G?bV4Sw7hQKj3IC5iL_Oo4 zjpGL8lK5NQ*UV6Su+MVCe-{?qlQDjlJnvjp@18q5{OE1rb?!;CU2pB&!Tf9Acizl$ z#?^fPyDd|RzN+u!Ri_r^zF9Z3&aJP%>iAxH+~Bdd*6ID1Df?eN%fD%PjpaCg@Vg1) z>t?ndK)!F_!FsoEQQrJ{^Uw2ta+M)vhoP1HU2k>sZ*|8kHm;tur_TM-6s7-7m+;5C z-&2$y4;pYW|2ntvK4r}9x1Z;~HUFNW&fTrxn}+@7poYnqKk5@&8ua~Ui+fbb3`1A? zcK7?4MJ{Ku%pcS+s${jX%U0)Jk=a*qYBE2&f%D(lyjFbo9nh<5!uzEeRR*S|rN=F; z?g1t1keDze$&i{P%!=!=gHO8urDKPB4E{ z5Bz;7Z$Np;U&_t;zUjzNCx3JNMts0`4j*-Y98>bscR2nt<@k;KreVuW6IhP=dlh!y zgXY$0h>Q46Qvam-t|rzW=ifE?+t7gI`@!=4U*@~ffVx^I3;%Jvzx>X}FP}L}IZ@s$Uys7+y!Z(X!)Sna}rRTa3m@pWX7h->Lp$ z%J<%Ze**f`8JvIe{qrVm&TLIdjv0ve(8C|eN@wc&f!VZt3d_GZfaSKJ{^WOf2NnEZ zw&?uxg7`m7{_~pr4}<@ElO%tZYcZ}~?bo7bXiEP?N#{KORp38*-M z|CrMip1#X$r!js8+Q0Mpl5KxD{e+00^;@K}{W;&i*3EKke+8gt&A4x>PUp9;N&dGY zf6?u!6EEeDck9ffUb&Qi?CF|4r&jZwwqX9Y5d0~3PL_9SS^LZM|4bWM@)6&`xzTo- z{+QNjW$hzZA^!98ADy^+YQ57{M85FTe6;mk+A73f-cxtt_!P~l^c`~&?cb?d?`y;Q z8v*z?ort~<`GfzAcp%|bk7O}*9shy3to@6X;4_frjMxVRzVmF->Fn(~H)<8)H_y}g zSf|zD-5T(}t*+fyjQG(zB>(zzdE~!3Aa}&2{D)5k{~IsnAK>$v#_C2%q?0(B7`Ioh?E1rZ7K)HtuiMWLSkLNquCr_TD zUc&#xy$c6gp1p*>oWD11)5m|l!!hmAyB~g|N|&E0e=HH6^rV3MR8RTO7Cm-_f3h-wd%%A0S{^PebWzO5T1o7#uXb4MQBL1^^ z+8esRS=XNsXX4jY#e*vlSEBUzPMObgoWGZBj4AP`&VDj~WXYh{7)L1^^rj(>uJ#7r zFTne?gWtsa19*RSJn|p)IOAB3aew4@qyzq&CI7*1>ih>)G?0Hd)0&OPT{6F$e?@=t z2OqtBT1i(G`7hacs<& z>3eTCye0YbeUH^f<7&son^F;mH2h-z*`Q~>Ddxu)^LJF-d|$fF{;cHBaeoXJfImh3 zE11BRY^W|in>ZpttNcd^=l|_b!D9j&B&NsF{$)PPRUcen)4%hmU1hI|^7R`=Vf~Po zN50B$rm0%xwh}AWPfR^%fFl2+N7eeWQCvS5wMzZFZ_PhI=Mw&9z2o1%lIu!U`DnwB z(f$)P;^ev3(`6@%F@IMv#r%C-=Cd5;KTUo|{4C#9_AvXOzkiududDL+c)!8$8>SYQ z<)icY53~QZ5xK$6DQQU)zd$Zo~*2;IL7VaIhx4Qa+%)>{I9F_dHR_>Wy z{8sU8TPt6hv2({;-Td3YfAt>Y>QkWCFY1~;J@N1N-S2<*V*YCo*H=0B(mHp5zrOCd zXG}GIWByi8oXT6w_ZzCQzNMW-TFILFbQt9Py#8gppYVgxTLbwl$M+xPchy>wD1XwQ zSHkxfh>!HPYI!Ay-w@6e@fTb&zYXR1euMmO4ayhxz@L1JosTq2{!*?Je@hem`CXXc zqw^FhC`eRD{9YFpaH7`EOa&rEgSvP(H zUa{9Ac2xjxQuqAB^+UB*E$*+F%K3-u2jWKiG42PwFY;|o7xRBfJD^>4RUgE`?Sa4P zy-WBvg3f4jL{o41vmE&o&(!Qp&z!b9rgQ&2_n7g%!yg~{nC*%4=fpPSdhWkhOqqME zwDhU<%;)?)vCUn~{kMp-7qtJLcucRqIc-;Ea{oO77Tj$AOj&;uk0CA@_TMZg>yPV) zIc*Qj;`zfwt{-v!(9QqYkHq=IM5H`_=;n{_dHyi*7~~E*e~|nc|BL4jm+&V}oIhO5 ze{S2JV(!0BoEWfbKJJgVHO4IF{5i4h)XEvS|Ni;0HtxUc_c!)m{OCtcrR_w_sy(=W zo_p-X6z>0HO7`Q%(5bpld{NB%?>TLIR&xJ6YQHbP`4MM0)6qY0x+WdF`o4CQXF1-V zKZ&?aoWDsY5BVe7zF5io>nAVae{u@WAL^OU`I~aC7W_XD{7HxFm-GBjuH^Z{#r&z? z*Mj)Rl)NV7mivFw=luQGwyBL%=iTdwDS6^8egFT&TWr7E8ozt;_Vu^Nu^i`bIe-4O zEx)m*@173piH70@3l=Pt^Y>Gq{Cs6}RP>LS;(d+J{$;@0FfXJuc^|10pf z&%1Nc#r*%=_GBZ^A1>y9wrxt|xc&*Hui^fW>p#ig{K?DDM8!u9`|4cY^9$xISt9vU z&JiOt6!?d$N5$%G8vr`(Da_6!<5{ zT+H8b=A~RsId^+c{IUOr9BIYqf7Y~;Ik`$$q&n!cS5_R^VL*J7DNjsDv8W=yFiy=m zb7~>BAD%(JQ7f?jR!6eDvQ%B-dzklco*bWh9`@hR{vh~c`FWnd@53jG1pmn^QiAv+{ss3B;6HLH&L1w}&-%pqgL(=7GZUxt{DE=? z^VjFWBR9>1|9IZ~1@r&=wJIC--**u&o&k$zYO&bwvh6xypIbBP6_zuu9&i<;M7`){^0t{vy@$lTz`Wqr2o?VuT@<&$9-!wHWddrBIk`wj}e0OS50qJxkEfV|_ zC$EbB#V^1=4}QDge;^6|d*HvGxF6NXALRu9P5kb@OZiW`8Tk*Be+Kw7CI6VkLf!(( z3I1E;clD`1kLUi|w`khfM2vr&XE=XqOYORw=MR#<5A|z1c+l1gxr5IiB>$_g-;{d0ZDtSrC&lyp;bQ)B{~aU! zcPimewdkJP>6f67|GNL2@M~%tFo5OI|BU>O^S8*aFquX!-aeS?-zNg=hnBTp-)Mb3 z*4nZb{v8KAxX0Dk4=l$9NdFZzd-9Y^_`i;PoIhN`pXL8-Nh8vwv^3J)Al)L}(%n)D z64DJ)OLuoK-6^%gviscCkKcNJ&+GYPU*~ntocEkNd*{x~iJ1$?0rrdL@BMJv?(f)x z?u#Ju$V$Byf&EKG_mzX-^uEA+YR|(CtY39 zUhF)`$gnB=AVnS^I+LUf$RqfF_5ZzZpdPA!^aKAtLjRxo0R2?|t^ZFuk6l`T_7|f3 z)o&$Y`e=15^$VUC0~9i7H7{Ok7yra{0z-_7pZ=D1J^LH_V z0`vEN7?8*P^eK=R1jqr+hyTSP^dscoUmpYOSBGoyf9eanjzajq)xxhM5&mzrzkCZo z4p0w9v>$={ThITW{=fJ2zxw~y^S}BLdjBu|mhk`9PrYbl^aZfLzc&8;e#D>od#z&_ zk^kb~-T~x~iT;TnA?*LPfj{|=K%U@Rg#G<@{{EYPM!on(3t@jF+6(-DKpy2E`v-Xv z$o~TD@4xw5f7cJxlSpq7{)e>zyx;cE?|B+nKlm5@$$$G=^(TMrHy_ZC44gv?{C~LA zlWngN{)hidKf?d;zxsi^FlB`Q;eYi%1M)M0`BJT`A6P%{)6!zLaby7VIk)iuaQPMX0kMa+Wz70PSkasZaV?+4woz@5b)F;`72l($% zk?9)nGN$2eZ=M0`euN%`9KwH3-$sDIVLk)wm;XaQRSux{KlNj_{XUnH7jd7sz!K&! z?w@+bfO-=F{my^&ShTSr^tYS0u_q?|hyLI`#ozilGUyusy@3C@%y|O{0MY-Gzl7P~ zvWc+2|K=b3%^yJI^~iIzt0CkNp5(q9YYSp@_B2gGx5cK#E;|3`lbB7Q*MP+fzFAN+=CwkY}YS47}_p*w8A^D964i&qEyIYU7Ip1Wd?%mX<%%mY*h zhKs8K)Jp{P|I{m>{h+os$T54QBM{$exKa!{0^(N)zA6kA^)LPxfZO^HJc2LqANcxX zr65lLe|^OsH2fcUq73~*Kk^skEkIo8hIWg#8KC9bI-2^2L>U?!eAMJXd=-(fqdj#R z$YyM0=ySmlsUJ05ir}LH4?zF$Jbl{6RJwWd4?g1%|2JOvH(uypczvK=kdw2MJ_27l zT*~(k-s{_+=PLrlDS+|27D0jGMPC=-1Jyq#ilk}=)cZZDK|EjD8w3Tqe>s8=l%pWz zfbu?rfA9#3z$5BK^bev)coPCI@(*74UwC*E0>6?u=D9fpA^{bQ2VP#@IDpE3dg>XJ zJ*fm>s=nDk{4WWJe-w;+disKBeF`Q#_3mJrz6Ga&Kz;=(Lhj-aM3N2QTmgJ` z!OuVhekJqNlZf-*cwYeL4dCJVsl^|2I7~luFC~wKzve9 zFD{$aOBME<=nn8}x9v|)`xIchu$9B_mdi`LG-2L)cfj|uP>VG*;!+fV{&5I}7T5y# z%S!~sEjKWT&sG5N0{_DMW-CO|)~cy3{lR|c0xuUh~= z`VSt#N8leMVs9bd-_j+5-_N&n6Y$SzYnLPVrqZS;Rup z0Kduf^nTxjd*W1HUJ;|CJIS=Rc2S}3E)bW~DCT6(Xu4r!^n0z$+()+&U#S?K zUM|HR6sCSwR#vf|`Y(}y1$vyP4nGp`{Fwq5bx^*4|L%ma-zkMCV?0|#{}b=z4A|8! zF8{*Ed1}8z0_>w$PcHyJr-`T+fd@uOHlTZf6kL`?fbLO*pg{FS2tLp~V1%|U^g#DQ zQt(=01G;Asf&$&E2*Fo%QAPTTAG2ve-~qW7p8v+TvXM~!#?vG4tX|E3@jO8PK|0BJ z!JU-Eh;$6IdFAVSvpNime06tMjy;+Y#;vYih{Oo2x7F0F+U$nIS!!$9?%M-YUmx=2 z5C1#rNygjX_$XM(Z~VwVctpJj{EL6^io*lH@k+1(W&?v8i0t(UQ15qC|Ej1AHQ(2- zBTtIc9e{HbA^?gDJm2iI>!DBKLMr<|BVMrgd^~8ugie-jfMtBoVt&ACWDmktdZ#4SXP1tcAL#zUe{WX~ zVly-`>;vin@KFdp0{7jinrteL`;P}K9xIDNO zp!IOaYdF|3(i@(7xAL3P`L^uDM`pw2SM+D&66=8SKm63Yj9Di@j>c1aOEIW%xG|OQ zm@qNl5nite&?7Rq_xzS}q9@I*d&AXa!e@CnnBwYXVm(mKf5nk_mkPI~xZ;TPq=UQb z<(&o&pL`yqs{0w}4!?G$%%6co&d*qd0yW-zXOkXW$87Ny&4?}qH}Gf`3biFU5=oLa>bpWUSRJ= zGR{#27gpagnzV^Y#;2lK}=6q>s~@4k&kPC$R1Z zu1^A*wHc6@xmjE(MN%7(kmS87Md(0kzloOSn{ zx20Zm|5+aL9X}u3P!yq1XPL9^Jv%$p!rymKd<{< z1LaKrRnFU7gZLmG19x5GH#kG9+QXWEU6&xPM>F{%XW!Ms0_1Od9e1U2nDes~HB;Z;BaUEWKt$?^5FP;4c zhpYXIMkh`N6aj|vU#eCLoEr?-4X^S}6M*oAT2)4T2I9Q(FeL>k-1`*3313LKZ>7cG z0n`uiy9aDWL6XzG0*u(FNN>g8sD4B~YQb|+nN4GBw0*mMZ(cM!vclNtIrAYI&J=4< zTM)M+o7gA8pZT#%+oQ5C-H(U9$qU#or!SSwawpX5(;t;g=R40H$uBIeobA7oBfQCv zbzh?kHkXO__iu2JNA4|(%0!in4yt%Yt+V?@Wc%)Fe&?{ol?K_;e5R!Scv;x`b`cD_ zs`uSlgkR6^6dw1(PfZOSUpM7!m2GBVX9mTNXoPsjk-Z3bl|g!u1xb)M?}LDEH=fJ9 zqD}n}fA}C$WDHZmj(f+-g^QQs-FH>E!IRCGsshyepd(pV^cp(a4;(#J`fl7iknhy_ z^SF*%(U(%bqvg!(U413nk78Vp$R%AAIzF5p-07F|81z}}RE^}vgo&`O(NCX&?}Yrb zsZ~HJ~5KbAi{9P{GVmR$-Gx#?CvG}kbSrDId zJ|{kOvdMwtLDg%?FIxG!IO3;@^&9bgNv{$d%a7u78P9G(4U{R&DkQ#F<34kGq{Uq^ znxh(SjmIl(UHjDS3Rnk>J{V zrrQI@DQ{NwFsd1Q-ZD``ANkM-|B6)&P$lPWPppYM{zKz~@$)Zfekj!RO>Zb%sb-`& z`hJ$k1axA__~Iv-#l9H*e1;t}(U`kb`5+T7rG!|F4ej8Zw5@s-O%Z!gzaITH*-HkD ztovvh-B|2;^~ogfXxTNX%#^f=7?&CEe|d*fbU*&Z;qG;9j-*Y{10)adzIN7C<9gUo zBTr50t?wc}bdmZfn&w5{y%)=;KfYa6-$2f<5 z2EA8zS~XvFc)Ws39bJ>R7-yxhUUf!FBz!DR%(QmLR9i2M@z?G2nSif0-q0;rcutLG zz}C?=%*g*`=7oNL7WuS5dZ8QO$PN=Kuna;LJN$?_{|$fV8-)ND@qx|B?IKT@=rdc@ zN4?qVPPj*TW0fvzpd+fg5ruE}eYr9`Up4-GWae5|^kpY&2M5NYwt;KDYtdOq z^4dVHkLSq_bgce8N868{^>4DOv^_y5RM{W02R_|9nk-vWvcH%+2<4J8ZYcX2B5~<$ zjTgEAA(AUO*m)lG*rLWw@bioSIq9bGsX*4(h16ot4LG|bDuu8trecF8`)2D@*Lz4> zdc1#38Yi z3I4L5QjP1#mtMCTxI|d=LBsn_!$Y&o%2R6!^^AXhncrg%WLy;?xhyCAm8|fq=j6!D z-ElGpy=L1qEx+sY(;KSL7ZMys2SRM7H53rrFw=vQ7x`}0N+{4&o@%+Z>hIEE-+}~% zZno1H*X3Tb&`fnDFvR8j`}>0e`Cu|(#o9=)^%S*>gq-ljIki^4i_GdZ^Fzqd6QKip zD%xe9xRpE)6Puy-fqmV9#Y6ewZyBrwy<0QvF|;&WIPMlvR`IS)1-9ouY@);5A7yGJ zzvxonDx^xnP$bO)i$*A^5D(3%Jwb38DB^ECM?uQqy7#9P;KM1iDJRr;$6cI4X4RN8>xWpdq&fv-VImOr*FN5Ker z8v~5a4Q(Ui_#--s&#)w#Pxqe9z>8&K_-Z9I3<5o0B=>o?R?u@aekS5AeQ*{RN7GHU zTnwd?|e?W$g;3=*~_)oowinnz|8ae0?9Yx@V+!6`Pc9 zkFWD4LrV>(vc;!}{6R5GT}SNB&sCL+hc02(9&A}doj0Te`S-29W=OQ(kfv$3*@@d2 zdW+c)UY_ZwPT#*mvw6nQe}Gkc)E_PA5UDe2prLsvVtD7$>;J_=t=eiR0d* z@f#6Uc&p#|@Y!^-+1HT9$!c*0)db-uOl$GEX^gK>7%ZS6v)mQt+{z_!lC8nGUhg#NAEo090Wem!_p|t0=w$Q34l8+#H&yIB%G2UjO(`zznQr+#i z4jP)~zanH>1~neCHZbD5b{ddyd04rM^zw*79HcXx`(xP#a>>5Z1^$rar+GQc>|sCg zLHjWK@!pD2cUP4_#j7@<{}K{0XL9^I&K27e4j4*ZqaB zYj#1^e-PLSnn+rv6jJro;CW3WRFr z1Du)14yQv-L(cw8J0Vco7EPJ2l&Ah3^Mf?@R2$rJQt{pZ62E{Txj-IP6QW_=%q5GaEy{mNZsG)%&Vbh1thg$6sXqVA?aITid@Ck-MCA|Jjxe2bdB{xZ=apug=HhN(?d z9v)?#rA}w)q04}g*01J>G7}?Q&PE`|M=nwiyAaV%Nx-jP4I!xN?G7ENUJXh^y~~DJ zk3TRKE|@OQL>l%Q>1w6PeKUsQ;5wNz0+ZYff4VqiY!(|m;+GIj*Fv3bpC;m-{5g;W z6^-%w5Py*J%9PAy(1!rc&^r-1r9|e-jZO(32QWPS7#WKD))Z5xd~6CWgskS0eGaf2 z9Sv1sdlCGL>ok`jcl((d3s5p|PyjWksgr)-N5r5ogTfnP+tYqCC-(}&2#%^Q(U*Es zRY{7!u=M>21=Vc-2BifXJgQ<7+7%+ehhFb*%K zZ3Pv3k+v5UeSz0RYXOgc=i9RvR-Ubq3y3{!@}0Z#ANS`Sj`FO{^{fGZ6vXNuTWcyTf5)+t!7#`Jn50OcSBX=90-G91sbF$n!kZcqCSWm;je71t-w0dG5KaxA6 z{KLdEBi5!iGBW%`GyDwgG7V|L2h8LcMTy8E%gyKEg>J~x3)q}cd5s0?(Iu}BWcd~@ zN+g^-t`c*^FM8SLO+`DhQ_hOlpL`YPIukI1s)%CDWIy;&eK=t^j(_BRBK_%VtkKtS z@G8tKQ@?4|b3&}9HASE%tVT-EPL5>ybpEW={wOf0z7 z2nV?rrzL(1=kPaJK=XnfpolC+9)Ll3xZ?r7V_l=e;%9J~B@;$z9r)OG<}0agvYnS@j5XinKCjZtl-e;Ns6b2O z{$ZdCs>Bup@Sb5MgeiZl#<$nra}&!f9MK*??vz6BWg42 zv}@X?yjP3McG;61WRbSV5CT{M0?^0`VH?q#2*zi6NIY7m+2l)pcsfdh^%aV0Z>*w26vMbyT9c zrQE+>e0<8{MY=ga&FQ4(u`A`K*)1A_<;I&y#8(QoILhA@eaq?LK=&(jxN>kP&cX=! zH1M6j9%(D>J+&%sS!NZVpH_QQ(}Z1{D-DDqvc(vK_mSkVeHe_m9+~-RdRlRB+5X&) z_+`U-;BrbG^wgt4)%+zkFKLjL6l2$y`$_k9zh;D05)z8xnZNOW%}m-kZ>~y9$C);` zW~?)_TKMCTj#6l(L1m4PBQRd)H49X3N6Gy=Xa3<}5if{Pgy?)h!n3F=W^=rb+qrXI z3FCkhYKaBXEj_q7X&T@h*%K97yYm?}eY$EStIJXxm8CrOgFY?whtQkH!R^D=>o$Dh z)8QU;$<579%x^SE6!siDdUUc#(Mv>%9`n@;#qE7-`LQP$b=Ereh5RK9uNZaDCBl&L zGgxS4Qo%xtOzRH#7tRkt zQ*Th9uR~WjOJeS$qtKbqe|XcGM~FH3@WCf_>~oIRZpE%E^POj~wg)NC@?Dx^J~`1* zMT|Wb@(=m=vj{?f-L$xDeDvaUF>2<-;FYlZHVw_)Ak`-WY>^z+o;`kR$3bpLt?n}! zretg7Y*_*o0di0!N!)OTi~H=2kjqL>#^fFvFQ+)X^Je~;9_w_9LZ4UYn^fmUsAt-q za|(UC_)br*X~)4yN?`5#)F%(azZM~B9AmAZ`&(~>_({2cO`SJUHftX>)@!YeT-DNi z7nKFM&pTTuj0SB-))eu4%RFl)q+~~o)G$xX^5J-ld+*iw(jXdOg_F<8(A%7g>gAEm zw%t?p4LQ~nsOZw?3Ejs#2vPS^NiHc;vAjR{GO0~B8np^3m#KSouPp79A z60U&s~siY z=^wbt)#z8#WeA?TE&CCHdx`Bm5TAaqtx&G7rNK~`#x z%xq53d~hmCP0vdLtPPKL6F`x|$Sk17`LPTS93jkz*s zd~Sbggrk&&kwJOwR5@j7(viS$MMKy_^eDNgD7(*PV_o?(g_`Ia$SQ+u;KDBkud%p7 z4(SS1q*c?0R~}mhmyO|FwBAf_33P~8VtMlNSD&vGh`YQ9FqS5j5597O5)k=*#oS3T z|2DbFT-qJ8$M=#-*$i^|sQt(|_ilD*GH32Vj$Y;-%Z7mJOd|q&7j1`D0dx%UefMIQ> zOKoUh&cfPl7`KUaa;?BYxrE%=`#=s$@GOT(3KY1ms3<+>fx<3C#FT0h->V-DC#4iA z!MnqD@M?EBo(z$z!V&qw$c-!%oZ4nD!&F~mzGTEHzRd-S7cMi6_E(XXNq20`S7sG2 zyGJ;kjfql^_VM{x%DiMGbLaiG(fjt)iZT;aO1YdnXX9|3paR>T)f{Q_CCO!}Wj-o1 zFJiyNxAOhEd$}~#!U1Ip8tW-NoK?vJy>bNP6mKr^?%qh>p>rh^(6>GErz_nf^O*@1 z@<6WWnDo(rqF~vbC#%Ds`m-GZXAXuX)DjBO~q)ZB2~CR*g2E$Wl~bH#>(B?^1d+F-C|AsV#Hm` z>$ZcI{_hP8Z|ZLkO?!EsEI5F-+Xh>-!E$u)%k)hb^DfKGnh&@tB&QOdu61(T;qTWIufWEv7W;@UVP!oA~Oe^(SXqw zw6M^Bdyd*BBDHQ`Jd#INS9RLLlz}@S2)!6@n2gq#%Rn`t+SQs>!4^qgZSeD5Zb`3g z;Q5fq5Fz??%M7wey5J z+oGq~{F8X)LysC;HrT?|pJYSTw5SwF^q)W1nthkM7Wi6;^=Qn>B!1)*?k}i7m$pWY zVs;vZ$C1)&55?5dC!4*dVVq%cv*JlHcXXd>l8ncB-V-S+J`w^Zul?O0O5n>g`@5er zcOpxpCwYuMq>D2zYP9_150rF7BzUMHLNi^U>~$&u^H)n%4{NoqBz=}`*+iay!nE@y z9SjVFXR*F&;EUwY^4)o4Q9l3cZjWnAE$oR1$luRL1b-C|Jx%WP z*br`VR|Jz}<^B1~o80%kSrb3=C-MiWFX95%m zWt{QKxzo{470*s zx$cXtpy>!NUYK%glg?0HBA*FGxGMd~Bp;SDOAAZnZrX8LU78BT&~p>xr&d2EW3~8d zUyA5cXt`AFOlW^&EFCCDj-#9;3J;!m%aMT9fSPOD<3$bokkQ|E^5CA0ZQVY^Qv;h^ zzK|yF97X4SwQ`d{0e|m#$7?G&q=d8Hmo*`#BOB+c-3E}?HiS(njm7KbgL{|?@@g0G z)~2g*<9h@vCrrJG{-E4P0uE5x`gWGUJ%PPt_R6Kb$8x^#xZC!2F&xICCVTH+I%Q8O z1*^twTA~!3-C$P0S(Nq7ehbSh`7uj8Xd8o4}9ciRmH&y(p zHP`7QhX*CX?Bjx!TZhRC)2S!U2N7QP_!{3ED)a=BdC=4TO9q{0I%ehwkB7kSa!&rc3-TRnL4SkoVI5sJ(4!pDA1g6=m&6=!>Hbh0p|~+lNup>@M`g#$_9Mixa-}m56cN67^>go z*joab!&Kmzch9~)Ug2DSL4dwsUd@*gUFTJ3NDrAnwR~Y+v@)&GES?SPy-+C^zT~ln z(Y=fGsynV$rKXV&vEeEAg2rO3tD-o6iE^P6iCN&Balm- z>2 z*KHRf$6|uP_h-Anp+eR_A&?D&=BUk3T8utCtUUPzx(G z6cWDS-BGI*Ha03h(55o3_ibg@<>#s6qV4{*aNP292S&BUt!VW*j{fKl??dGWe>=CCL5pd5tuwIa zqU%jYn^3x;H{==a5KE>nCe_S!S%F8#17(%X^IK+?YT@?^?7~7b$}rfQPQvj8X7@^( zAw^2%mh`ef5!ZLYm#8{7n?XtZM&1%4xFg++XPq~K>U7KyBQ%R*z7VZF?YxPVVxuW2`ZkWXny>xgoB{uG^gw}LNAiuLX=Va1u{N=*iq_Zy_^FV@B+=uc zo$AlAFL)dIGqmRZqvFCDGwE@44|}-#f7#O^7VI%mUJ?B zewG!>JiEBBq`Q@H9lMwc`a${#2q`JfUDp)=3wg?i-&~(=wU)s_*pUu_%V|V^9?tb*Ir3 z*W1;Ce5tL#@{ba&lar$6l0D$3boXS+Fnn?izNCGdP{r$n8wKua9J&Qt)~rp`bUmQc zQ6^Y=aFn5iu@d>Rf`7#H)j1O*8zqzJ=bR(jYd#$eAG)2O%Uf?3g&g-TTpSsJ&uEx< z9D#NU!DmNv=8mY9-~|k4?LPJLlK$my5%$bj8BE!5E75ffw8t zdqV_^1K*CWdj6uhD_R2-b`2k9?2~WJYeX)uennZ`iEKuxl~aEP5&BE|_p8 zQaLIe#Tv>tbK;!I-mw}7CGxdc-O+MDR=~+RT{V95ARU1e{yD+nG*Q?h`2DG&_|fKk z;Z1s={9Zy>Bg%d7mQ1o!(QIA@)3?>!;ogh$>IU2zR9n_MZq2s9j9n?JwX}-aEuoar zwppj|UY4ZkJ*SkM1hgJOJ{kFi{X5rKMc>4jUX55~U7UK_KPZ`9Rbd{Sa=B}seY5I} zB4>C$^4R^Gz0dw#r!)|oKvjsWbfci#R{6LReh{{}jk;&_r6bAhJp~;~o58EI0wN%^ zS1MG)|3qobE%#l)G&a@}#lub+wd#j8l7hzRuEUbemZ&0Ct0#&;+5=@&@I&!<6U@Cj zO!bg?ppw)Ul2baG?FV#k}@a$WA5gZqp2-`cR+R ziUW`2n48clnL@Ezvxwz(p}=Ov7JVXqX;EXNL+-oG1Ba&bDhHZ0u2wyKRR>PkKO7^z zC~&pi+$Wys-56M9wN^mI>($nFsdX*g+^|CcGAnTMoYw|7iC85;)Q&QZZ!G^jg0ocb@IdrfaJ7chNa*-8MpX1jD zZ_98*s$0FESB51~nu?J72&ugP!LMg<02Qbdk=`!Yb+y%?cy>On{Y=zd&u=JYxSJ6? zR-6~~lVMo} zpKrw>M&8w<6}jN-UJf7P@11Fr7O6iZJ0Uw%Q$$ql}I<)_&Hbm`sE3kY}-r z^-!#2TuU@=kE%_hhV)%m9bu-}Y!4o}=>kfc@)B?o=%Y7Sppfmnh`dJ|PPxU(pw3`ieK2c#z_0kk6%!Zjsxk6O~QN&W`y7>L_TabIlIzh^bC;4=PFSQ+JRl&Wz$h zjK>r6?pw`)1;dQbO6k1o+8z?5+tEtMwM|k}pQICeG>GE&KcL=Fme8vlw=!)oeQ1@v zmgr0ujQ%CaK!=eQ|Cu-+TmDoU26boa;~q3`mnZfO@i2E&9@RO>Npp8ee(MF*z+|vKQ(5KAk!t)5h?J#<~V8 zpNEK|fA{FCnpA#QXpZRSVcBW8jb<;^k3%O{GOOqI;i96Wxf`Rdr4uiObiEq z#ag9^&w!zum)&pZ)whi(wAncCG~c-tGna`hhE7Gd(ES4S#AjV`3_TbiC|$c{p=2Hf z%-!#8VVazt@d>9?MwHC`liS^Tx?5tAy0GxgAC#WG(Fz-GP7_8%pk-N^ktH*mIFG0g zl*hRTB@rj&*d}8?+o5|#jfCVki;j?fX*)XOx&SARu8yzAHgLR0jWhLCPkq0H9^LOT z@>$$JU<*t$eXkNxMAf#_pT_tJe`r_p<=k}h8g}ORnl*Bu>CQuOcw0?>eLrs*iR#w<`D23|9>C5bQi`ja89ESfJ`*v@xJ2q_8V3Jc5Bz~_$ERGH!J zcx4yA8Z-OBp|?SPTTo$|E!|(A2=9^iPVIGV_m))?p#AcvvJa%10F$f&w{WP!@oa7@ zB6=9-&PH&Kz7d;TL@^aQ?Dgzf56LOh89i*p`BVfq*bc8swe~byAoIPBo0#i+XeI+| zG_rUS7;g>^#UgGS@TF(gafeaPNUa~5emy`o$?r~_2!8kL1k+{3=t~F^cw_@j*7epz zD8%O_N;bOnufp5?xR3CZLG^K668aCq)mTSQmuUUe)}=^W6{kHf6?F#YwN9JVE$?I{ zGPkrGL=|qw3@!)TWg4q)#3X$Rz8-I#gE#wgPQolo(Os7ERSv6VV#aCYpNvaZz@KC2 zggkwF%6-PHu}se$m#ALO%~#}75=5v-MfdYly3h~d+x8%9cQRqkNI!6m`eDrIgGtr- zer1i`fy0{JVbR5I)@~3f?4tj20h4IpCp%OdlE4q^*euL7F?-WtaCM6ueVp8p7J7i^ z#;@+;nKv4+wH@69YLe0-m>L<&?+Q&WKXT!=6Oa9&$`MsF4+00)1WPZOCM1ja#!p5{ zgIXVUzux|~j2=UHvrk0IaVY|NeX&!B0ph@%yge~m6v!!7hOaLQuJv{+(m)sJJHf{5 zJ8o)WRQYaukd}$)Dh`YaPe1fu! zV?Zpj--;7B&JzkML1L_Rcu;&>8;}7U16HzA`K@%Irf=!vDIjy;&TMFh4{Bj1&#LGc zW<+BP2s?{>KW_KzZvCDtO8zYPKC-8u1CnOEj=}QYo~0d>||@G3t2F})cz12@$9yvAvMDR7DXh@ z3Jxq;%0a8BVHVb;-PR*TCT%WD&FF?xoz31|GEtohWFJWfj%4SEIkqQnc=f7jh&8!p z^k=6tOoa)VN`-OHeBxR@O{bH9lPH2-TtF7?Cu~GVk9<NKj2zYZ3IJnZjAYY-T_L5O4ZP2Ql+SVpiH_2n0 zG~D+FdJkG5n&Qe!|42Y&)0UWNrDkTiI(40jPm-$nqNKoiKCW7Y)r=6$IhbFY&@x)^(w9wy|Uzku$D&T9@jA0DD#QOB9K+@RhssCJXSZiyO;D#-VZ)ThQ zP=MiGU^(1xVc8{V2W;ehc_C}w3{lL+eY? za_A-#zM-&UpBe|s43&q4n~RevWDc)Ej@HNA`<_DpmRMLMRW}kW(IcZ*`yOe~GLKEG z@9vo0^SWlXEy(RnUB^vl=WSXlHFJxI5oz155<~MF(vBzhuErsyRSb&f3vniFwCe>8 zG-!|yk4)&+U4D5$GE+t}3ydM}pR0&s)sw9$pG{Y;!J05M8Qld9?}Rrxv-ty0j>Aju zG59l{eoZDQm5sWK)bt8105Xq4rJ%A+j{d90Nf3A9=T>V{%q1}|4UKD0ds*eQOYxxO zlpyFW@>qc6m%QFoeuxcc#F2ngK2JsRWMm=nd3{NW*{Qd@Io(az*ifM^Mv+Irl}KYk z6e}3#*`oTz*M~2=mYBYx0sFbNflN4DHzl!)QaC5+x5|kVDt0=LCsW?KCD_J8G8`^% z3SlZHlGug8z9+?sic*$rT^Caw2A1C82Jlp@aAY=~sk=*kjyaFfcecv5U>oHNiPeV3 z)NsNDdvi7^AYG$OQhS52a(SL92M@iVe}!DNE--XiJb}q>A$j9DIK-aUdwTpOh=U#U z;zLA#*9l{@2$$U=eFy*a+d7L5m+%s^=i$Wy>~D-OrPeQ{EKQYD##)k}G)}kkkG4s@ z>Scr+QTxWOr|3OvhTy2!zf zjj@32bwR4L^sVe?7{-H*#i4T3@h{^q-c=FfKY9`llX5Cw$ zuX2a|tZsxHl$rdse)y{Fx_Rj4!BlyZdwboIu@+$j?!6j z2m3{HSn7*tMQaa3uHoitrLs(S?%lr7KO9hR5@1=njcq*j@S4$`@X_lA_2Z}QIy)rIKDtWpQHRz-kek1EF?h-CSLeN;lk^r0oGiC7 zy05HiBl&QUfX0+UG#!gIW2ilt8DdXTu|y6_(mBOCK=ES9|25+A-Yw>QbUXNIYUurC z1&V#_)4?+$^Mtg`_kp>7i(SEw&q`@@yS*qz$CK#T?I$azXHa;K3C`t_VA)uvu@<(lfX<6-o?-Ew zTzG1V>)4JG35e<`HhW`{=H|m1CWiwycD3zp!Xo>Jf<_!Ts#e<>Lp8f+ za%zUU^z=pH5;00D4LY`cjoT-fg`lB>lzG;M0jFm!7O1RCwtS2C&dzVs@MPLYLkS*@ z^Ek1_S+=WEc2vO(4LT2le+{8qQDg-(x9w@SHMAXGcsZzaUc?=&;;qcEKT6;E{@Uvq zG@T-rjS1qB;Vb38@sZ(y_yD=z6>D|gh&r1uYuJ8v7DL`hN?2uelG5PliA4^rEVkjf zb)DqK0wY%4!uq*49X{pA21=Bq61K=wHI(A1n1NJ2jjC5DiPG(*mA1Qb@ zve3QQoR63}Ik9)O!AqgKREWD^at=iKq#!iMi$A9L;id4;Ook{bhA}PD6`wbIfNh@j zQ+SxDsyy#-@Q@Njc(!_tCkHLMko|>6oP2zn$>#4?Sasz}wtsnx z`dnP$MQ8KSSyd^dt+?9Y&-OP|5}GTQ#7GKlolqSL*FAc8I5If^;d8$3Vx7yxe52a# z%hyrT-et8W!h1GY;Cq%>QpDJDvU$9-;^Dz;#GINI83|_agC)69+Z~3_g%|RRw&MSS z9awZV`hPdsz!~)^d0jd-X=kGy`us{)l-}^}at-(38|u@oGs)exOH}LRt4w}2^@u7m z4Pip6J*|bn#!(X{z&$N=Q;w1WEiB<>fn4j&2~?zI;VUI1oVt_haz4N51lg~t;@TN_ z!c}y#Bsf%~f}J?}v3_+pVZUD7+!*R&wk5~Rxp`Kso50*--1vC80(N|@Z~SH^TRobi zmA))0SNXQ z%Zsy=mYsrUL{Ogixef>6oaG(GA=k~ANxun%z@niNyRwYdzsth_eA^CjOB^ zg83;j8MfjkeI4NvvU`qJhA_o!B=Trm%vRDdzwPoTt_wpJ=)uw>42?;-wBq1wg>*}Mf8U=*ALT!M=tCO6}BPuRQMMgs5|))aP^YD zpA#{*b)|&R|0hKby79z0QyL?4QqZAK3mF-Ib5`th#$1uA_yf`}RLr>PT{HZd#tS?H z`*=>W?q$l~xN!ZZg}0Ix!FQbT9MFvMEuS%Zt@Xb3sAXJ{ciJoL7=OvX znahwXEuc{Vle1IPABns4H!7(0LQJPn029)zOqgIbAaj5PHEb2=Zo7AT+Y+(#@t*gL%}2&@I-O39mSeqZl5mjqnFIc-VAwa`_%oK^5!jAvC> zkLnrss2}O|ZXsO|hHmn7bmkS}vf;Zh0slO{6VsPSUBItyd(fi2tqP_V_`_;NVfV5u zL@sBEJ&uqqgWVpIS~!D;R(KwQQ?z-TLs`n?#9n`XqJ(#{@UYMjb2@EJniA4AIGY@; zLG8EHSnjY3GfvET@JIXoB>{i11nYa2g$jv;!|$i~S5A4x6$8IsH-NvXGm7K+xIu{7 z8eL?agnu#pc{u}rF-Kf(f{pQPhIP@l**x%P7i1*-C1tVM>+0Xp12Ev9Us4eG?E*h( za1p@tn$aMPn}IdmE?B>mF~nGZ${&HjG-RQRr4oc5 zW{(Wv8?iP1)e@VZHF`fb-$!a>D&q%oSf6XHg`Wx3n;@&;hxOrL{fy{u!Kej{Ddc`l zF=p6>uCm_`K=wSPZJ{flNN{A}bE9*D3!@QmnzjJ_ks+!OC0I@Jqv^kPgs?J zK;`=fHn%%JJpD6zbMP?9Pm&w>*y6*?BQ zVE9#aawhH({g34~xhjJ|8N{LlKZ8B{&x2pCi}n_LY1wpsZ*crfGEqo)7nK}Q7g{xo zQAsS+Vsz&7<}4zyC`m4vDe;)_=4@gr>2*3gJABg@#cjvf?|JHe)<DQm}RkVCDBI|GYJEKeF6Bh`1C1vr9#YZ*oyP; zW1DS~Z5=i|=QQzO5cun^7Jent=+wTyA4f5G+@hn0^#}ggczUOqv(sIFJ9O?M9gyKL zDx@=Mn11^``eQ6(bwQ)P{g+4SKizdK^^J@t@4vURr_(1rl_TniHn{gl=;mhiL;6gI z5d%9mg+67JI!!%CkaqXa$B}mOyqG~f`Sp#uZt5}VO8l_?6Mx*##TfCze?6Eo-%$Ym z_(w6Ae#g!pi`XZ^-y`AIs^d4R&)`oEf92o50=x6<(NXeImoe3|>B0Yc;;C;K^HDA- zkI9UA{N&V&|K%{F+svUGL0FKd+V#`JxK6!4#W>vh2%;DeWc=g9>Wj}GgwGSoO1Sd9 zuMR!?%wCwDi^=#=tdP9j`_qh~n z3JAjboLNb5_MgdQJh?-~9A2eqLnzy`9)sDcBvFoxYOHuQZ;%;*n;NY`QbFrN8IE zKa4{xlbh!PAfTjRv*EbfxBuhOx`z4Dh{}@4xjLH^T=R{J*64ihyAJ}~j|XW*)2dBI z!Ne2dR66}fU+n+OXZIor5;6_4PBe0MLAbNqR~0{%SIFd~(Q8ve?;B+N_*NxZ;6m~p z_xHW{;z4aLSHkxpq`nk7Wc)^yE>IJ{ZWbh@My`S1XaOU7eTPPchQbM94f1BrY!m9*ZUuR_%n|_A}xSpD>YqS}L>ACg6tA)R3 zRU5Odna=vZ?k9i!e{-JO*NR3!5v=m2n~Z4>Vw*C@54Fo4%t)|T`yHLzkCJyZ830*#a4g5m~-WWlZ*Nu*vM2W3;_sqIQqw&n1h`gU- z$rDjA=CA$30ij>U@0ak`RmbmOU)$2tPbXYe@!O|kVz+Pl!#ISM&h=WT({IOyMSYgc zX9+$BibFW#Bd3fiKXRH9u)e1y;3D|wbA1X2dYS_YPLz)Bi;SXXiOsmCps~y5Cblf0 z{Y-ZB0I?_I7e&5!{!D_Rymi1NUpFf6P(r0<^EP#EK`fg^GXqS0IM3v%FX8vtZHoSl ze~pw-jN07f$SK?hx_!b3SReQibWva>ioY;UPVbAHh7qV3b4n24C{*32@*2Z`p$xxL z6@OgF0Dsozb?Eq82tLhXEWfVx`vD13Kp7Z7YW&NRJghIj_)4*wzr)Q5Sl?Z)s`C7P zjU4DPbou-~#KbbDT3%caZqiwvDUafWpESVw@Hqzrhs_DERHc~YC&3R?ymFNNet--@ zhvh&EkeO9!SU+DbhJ6x90zD%@TdWTb+oghWtLo%T2w2`fU{S0L;3ErWCY~1)fc0Uu z6n?YkdXANWEG6S-mO`whEI%QBz{3UQWxpRFgYZ|Bxg5)BbV0B_dLhmM0dVkf8`wu< z{7iWX@mP!1n6T_KB^EK(`M~-h_*Naul&9r})M1c^yR zK~&GUO4_S6V}@%4k%U~TXJXlp0NT+|??_H(3q^VZNm8QYhCZg2kQqLz+(@VS@F_bU zr&Hx}N0}uw00o;L_>el10mgF0P?Mg)N9Cvz4W+?A0tWQ8lwxK-TaMqz z2KY%cf%OrlzJ#BbH+@G)UotRsnw~pgRN}|ISRC-vtzMfmmD1oN32vNehLB=R6L%NuW9KGW$hAoHz;5~1k1o~6CQX@z9-h>F3$>2nF4O<9Gh_6h z^m8dTMGLO#qD;v}-ybVwjZ&v<{eyXd6;w=@40_?x(V^9p0b z1Dw2spPnBuozf~WC^&QQaqu@tUtG);X$@rf$wE^*zWX?Q=BfzkH#vOhKs-7@4=QtK zSGL{vgb~6w(RH`)XFsylOE+m(T9$_U?!bhbZk%!V=HGpv(`@zFyJdS|Stnj7;QZv3 zQ$w%s<3UDjxM#a>!5YEDS?06jC*HD(ZM#oDPQc_C{&x<<&rhJniL}-658Cwi6%4Uj z_+OLo>!Ke6zkC3&nF#zv2^u5!y!34lJOAWK5hGD8tzm>>(-S9-92h-)gwzKRPW@eqZUa7hu=A%jvfQC^O2`3V>yRctZU=n^NLY^JO8Zu zZ5o5;&PTo(kEZA+B5+;7$IdkR!MHsAY#hGpnNH5&*JlGudbWN3NiROrM!Q92`izPw zA%RT_=qm%l3j!Z;U%K4XRqA3NBxtTz^;zcElh>o=lMHOz}KN6)CG zI!^|VJkkFmp&rYBKL7-vsADG}M(RDKtPKDPmrMAuc>xUgFUk15U90d0vS)g-41cbu z6$&MM+LZc^Kx87$Y%S+ij(-@YA3in=v6}dSEgIYT;FIvn@aJ>fbY-&_Uc4aiRVO^D z=ihc>QG-AHO8@`z@O8zu-z#L;IY{|k0hav4(WAJAPaKi8Rnkv=|x$SsQyn`+vTxqjPO6773U?P@TJy!`qZ{0kF49)zMR-^-ruGD_w!)1wSzCa2lU0o`4_E4zC4{%ml=XLj(YO8kgQ zB-H+Utg0A((qQ1f{qqm+du`WKUwcj#K#t6?AdCXI zi`7{)aMQv1_@*CTWaVWL3iaYb$(bVbKU5fE=Aefn+_{I!l7;4+0zD+*RU7RR5ML)@S%r=A<&I~ef-_4HsIpf z)gro9ti@%C<>!Eq_5TMnW3`EV3nD520000 + + + + + + + \ No newline at end of file diff --git a/plugins/proto/isoworldremote.proto b/plugins/proto/isoworldremote.proto index 68a3b24b5..295cd03f1 100644 --- a/plugins/proto/isoworldremote.proto +++ b/plugins/proto/isoworldremote.proto @@ -18,9 +18,26 @@ enum LiquidType { MAGMA = 2; } +enum BasicShape { + NONE = 0; + OPEN = 1; + WALL = 3; + FLOOR = 4; + RAMP_UP = 5; + RAMP_DOWN = 6; +} + +message ColorDefinition { + required int32 red = 1; + required int32 green = 2; + required int32 blue = 3; +} + message EmbarkTileLayer { repeated BasicMaterial mat_type_table = 4 [packed=true]; repeated int32 mat_subtype_table = 5 [packed=true]; + repeated BasicShape tile_shape_table = 6 [packed=true]; + repeated ColorDefinition tile_color_table = 7 [packed=true]; } message EmbarkTile { diff --git a/plugins/stonesense b/plugins/stonesense index dbcc80ff3..25eae7ef6 160000 --- a/plugins/stonesense +++ b/plugins/stonesense @@ -1 +1 @@ -Subproject commit dbcc80ff364978e9e5fec13e425b0af84c403f10 +Subproject commit 25eae7ef6f19a24b7fc7e0d72ed45cbef7ebe092 From 279c4a48dc2d1d59e2d38da5a228ee8c57e9331f Mon Sep 17 00:00:00 2001 From: Japa Date: Mon, 22 Jul 2013 19:05:09 +0530 Subject: [PATCH 60/72] Started work on ramp generation, still needs work. --- clients/unity/simple_sample/.gitignore | 12 +++ .../Assembly-CSharp-Editor-vs.csproj | 69 ------------ .../Assembly-CSharp-Editor.csproj | 69 ------------ .../simple_sample/Assembly-CSharp-Editor.pidb | Bin 7163 -> 0 bytes .../simple_sample/Assembly-CSharp-vs.csproj | 73 ------------- .../simple_sample/Assembly-CSharp.csproj | 73 ------------- .../unity/simple_sample/Assembly-CSharp.pidb | Bin 130247 -> 0 bytes .../Assets/DFHack/isoworldremote.pb.cs | 46 +++++++- .../Assets/Editor/MapBlockEditor.cs | 6 ++ .../simple_sample/Assets/MapGen/MapBlock.cs | 99 ++++++++++++++---- .../unity/simple_sample/Assets/Start.unity | Bin 89520 -> 94200 bytes .../Library/FailedAssetImports.txt | 0 .../Assembly-CSharp-Editor.dll | Bin 5632 -> 0 bytes .../Assembly-CSharp-Editor.dll.mdb | Bin 1027 -> 0 bytes .../ScriptAssemblies/Assembly-CSharp.dll | Bin 88064 -> 0 bytes .../ScriptAssemblies/Assembly-CSharp.dll.mdb | Bin 25174 -> 0 bytes .../ScriptAssemblies/CompilationCompleted.txt | 1 - .../simple_sample/Library/assetDatabase3 | Bin 31088 -> 31088 bytes .../49/49176d7675a998345966feca21555311 | Bin 17905 -> 19789 bytes .../6e/6e1305e96d61f204f8229e0a0cb7f8c1 | Bin 8921 -> 9169 bytes .../8d/8d11b6dacbf85e24ead2e95cafce40fd | Bin 14689 -> 17465 bytes .../simple_sample/simple_sample-csharp.sln | 45 -------- clients/unity/simple_sample/simple_sample.sln | 45 -------- .../simple_sample/simple_sample.userprefs | 8 -- plugins/proto/isoworldremote.proto | 2 +- 25 files changed, 143 insertions(+), 405 deletions(-) create mode 100644 clients/unity/simple_sample/.gitignore delete mode 100644 clients/unity/simple_sample/Assembly-CSharp-Editor-vs.csproj delete mode 100644 clients/unity/simple_sample/Assembly-CSharp-Editor.csproj delete mode 100644 clients/unity/simple_sample/Assembly-CSharp-Editor.pidb delete mode 100644 clients/unity/simple_sample/Assembly-CSharp-vs.csproj delete mode 100644 clients/unity/simple_sample/Assembly-CSharp.csproj delete mode 100644 clients/unity/simple_sample/Assembly-CSharp.pidb delete mode 100644 clients/unity/simple_sample/Library/FailedAssetImports.txt delete mode 100644 clients/unity/simple_sample/Library/ScriptAssemblies/Assembly-CSharp-Editor.dll delete mode 100644 clients/unity/simple_sample/Library/ScriptAssemblies/Assembly-CSharp-Editor.dll.mdb delete mode 100644 clients/unity/simple_sample/Library/ScriptAssemblies/Assembly-CSharp.dll delete mode 100644 clients/unity/simple_sample/Library/ScriptAssemblies/Assembly-CSharp.dll.mdb delete mode 100644 clients/unity/simple_sample/Library/ScriptAssemblies/CompilationCompleted.txt delete mode 100644 clients/unity/simple_sample/simple_sample-csharp.sln delete mode 100644 clients/unity/simple_sample/simple_sample.sln delete mode 100644 clients/unity/simple_sample/simple_sample.userprefs diff --git a/clients/unity/simple_sample/.gitignore b/clients/unity/simple_sample/.gitignore new file mode 100644 index 000000000..6ea3f8947 --- /dev/null +++ b/clients/unity/simple_sample/.gitignore @@ -0,0 +1,12 @@ +*.sln +*.userprefs +*.csproj +*.pidb +*.unityproj +.DS_Store +/Library/FailedAssetImports.txt +/Library/cache/ +/Library/previews/ +/Library/ScriptAssemblies +/obj +/Temp \ No newline at end of file diff --git a/clients/unity/simple_sample/Assembly-CSharp-Editor-vs.csproj b/clients/unity/simple_sample/Assembly-CSharp-Editor-vs.csproj deleted file mode 100644 index c22a3b8ce..000000000 --- a/clients/unity/simple_sample/Assembly-CSharp-Editor-vs.csproj +++ /dev/null @@ -1,69 +0,0 @@ - - - - Debug - AnyCPU - 10.0.20506 - 2.0 - {AEF4C46B-71B7-6E0B-EF7E-154F411C7DF8} - Library - Properties - - Assembly-CSharp-Editor - v3.5 - 512 - - - true - full - false - Temp\bin\Debug\ - DEBUG;TRACE;UNITY_STANDALONE_WIN;ENABLE_MICROPHONE;ENABLE_IMAGEEFFECTS;ENABLE_WEBCAM;ENABLE_AUDIO_FMOD;UNITY_STANDALONE;ENABLE_NETWORK;ENABLE_MONO;ENABLE_PHYSICS;ENABLE_TERRAIN;ENABLE_CACHING;ENABLE_SUBSTANCE;ENABLE_GENERICS;ENABLE_CLOTH;ENABLE_MOVIES;ENABLE_AUDIO;ENABLE_WWW;ENABLE_SHADOWS;ENABLE_DUCK_TYPING;UNITY_4_1_5;UNITY_4_1;ENABLE_PROFILER;UNITY_EDITOR - prompt - 4 - 0169 - - - pdbonly - true - Temp\bin\Release\ - TRACE - prompt - 4 - 0169 - - - - - - - C:/Program Files (x86)/Unity/Editor/Data/Managed/UnityEngine.dll - - - C:/Program Files (x86)/Unity/Editor/Data/Managed/UnityEditor.dll - - - - - - - Assets\protobuf-net.dll - - - C:\Program Files (x86)\Unity\Editor\Data\Managed\UnityEditor.Graphs.dll - - - - - {AE3AFC6C-A022-3549-CF6C-7716EC410CE6} Assembly-CSharp-vs - - - - - diff --git a/clients/unity/simple_sample/Assembly-CSharp-Editor.csproj b/clients/unity/simple_sample/Assembly-CSharp-Editor.csproj deleted file mode 100644 index 0545b4be8..000000000 --- a/clients/unity/simple_sample/Assembly-CSharp-Editor.csproj +++ /dev/null @@ -1,69 +0,0 @@ - - - - Debug - AnyCPU - 10.0.20506 - 2.0 - {AEF4C46B-71B7-6E0B-EF7E-154F411C7DF8} - Library - Properties - - Assembly-CSharp-Editor - v3.5 - 512 - - - true - full - false - Temp\bin\Debug\ - DEBUG;TRACE;UNITY_STANDALONE_WIN;ENABLE_MICROPHONE;ENABLE_IMAGEEFFECTS;ENABLE_WEBCAM;ENABLE_AUDIO_FMOD;UNITY_STANDALONE;ENABLE_NETWORK;ENABLE_MONO;ENABLE_PHYSICS;ENABLE_TERRAIN;ENABLE_CACHING;ENABLE_SUBSTANCE;ENABLE_GENERICS;ENABLE_CLOTH;ENABLE_MOVIES;ENABLE_AUDIO;ENABLE_WWW;ENABLE_SHADOWS;ENABLE_DUCK_TYPING;UNITY_4_1_5;UNITY_4_1;ENABLE_PROFILER;UNITY_EDITOR - prompt - 4 - 0169 - - - pdbonly - true - Temp\bin\Release\ - TRACE - prompt - 4 - 0169 - - - - - - - C:/Program Files (x86)/Unity/Editor/Data/Managed/UnityEngine.dll - - - C:/Program Files (x86)/Unity/Editor/Data/Managed/UnityEditor.dll - - - - - - - Assets\protobuf-net.dll - - - C:\Program Files (x86)\Unity\Editor\Data\Managed\UnityEditor.Graphs.dll - - - - - {AE3AFC6C-A022-3549-CF6C-7716EC410CE6} Assembly-CSharp - - - - - diff --git a/clients/unity/simple_sample/Assembly-CSharp-Editor.pidb b/clients/unity/simple_sample/Assembly-CSharp-Editor.pidb deleted file mode 100644 index 7aee5c8f351010a471516c2f76a53f1c040c4146..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7163 zcmeHMTW=Fb6kf--T_*uUFSHab`ka`Pg!d^>ooBA^k%V zR1Pypa!xTCwk1cBIBD7acn`23tYE%M^3{$tY*z}``H?zhn z9I}&mV>I=8W9?&ydWVW7o!fp{=$>hDh<8N*1j{Q__iY_+z}CN5bqA{!>{(k>XeW+4 zy*w)w26KH>4^wRx417QpJVRfeQGkPZZ{F`X25=oVuZbpq;uiD);q<&?J1M@wEvG^j zz~uvp`W2rX*2nZgeQ+R=^exYK`J~N#&t=v?V$m;Hra|{x-l<93x2zCO==(sM8$8Wz z?wW>@QNVQ zq^@k#%oxeyOe>iV{ABYGm#S*GG|)FGTA=={r^BvOrnIQct=<~WX6p+xo@?5x1BtRQ z9M>`nn=(HKiFYIO!uU8FHAcsVE{vSxgXb^g2eub%hU8C{@IHfW*OL|#Vy8t6rD|B! zrf+Dvf__pJ=?E5?=?XG-LG{~Cs!~^(^c|nr_Nop40PWdD3Fg(WI-O+e9{$&7naxAB zHFz+nw+3Yo;ebEwB%Zye=u>2%U+MYeQLQ<1v&4r$izKif5A z3IdPl=x}_Iqx37gW4Qu)b9(%qe4p#|o~AsK_AU{K!<)fwM-tQ=Y)OmgwRAxoo=%3V z$EXvA-|E)U0jjsiD9gnJUv|xal;v?6y;Xk(PVCI~$_1->Hc5#Ew?f&E3O#uPaIN4q z@*Xua$d_Qz#C%4-nqC6g8>U@!?uy*JX}FGXN**S1Q!Xp>yNnSGM;eKb5Y@|+}Q}9b?ZSG0Bh|471Gt{}!hHkrqdY05`+nRP+Wlcyb z2>c`!B&RO7q4FFG+{l6eaTq@H`CTw#JhkEo6B&*OW!9L%LpEKOgUHY=GTa-FyGh5l zy_oO|267-=gi97%6}2p>R(6VJ$)vncA7JL|zmz~g35KX>ZFAR`T$fdm*&6B6awi?z zqr~YH2*cnU-xf{=en{JPUe;h#VmrAlHXv#&m4=RJ&%p#ziF_#A0cxKJVK5#G|4jD& zzw8g_qcW^oSyA?b>S6L4;hzXy7u((ftpXY&;U7CfH?}CYKug+qq=X+5baz79f$<-xB`Nmf5c%h6cPD4Z3@!*F?C$D85KA^6mAxSNR-T-_zB&8ur`0cyD z9%brlVzJOM%(cmwHm}n5=~|K_C16Jh0Zs=s1e$wEGTSpx8MLFV2S9dsGxtr$(@Zdr h(Uuw|j?E(XCgs{6jLJ#u93^z56G9wP?=N78%D>(_vgrT- diff --git a/clients/unity/simple_sample/Assembly-CSharp-vs.csproj b/clients/unity/simple_sample/Assembly-CSharp-vs.csproj deleted file mode 100644 index 0ad90a354..000000000 --- a/clients/unity/simple_sample/Assembly-CSharp-vs.csproj +++ /dev/null @@ -1,73 +0,0 @@ - - - - Debug - AnyCPU - 10.0.20506 - 2.0 - {AE3AFC6C-A022-3549-CF6C-7716EC410CE6} - Library - Properties - - Assembly-CSharp - v3.5 - 512 - - - true - full - false - Temp\bin\Debug\ - DEBUG;TRACE;UNITY_STANDALONE_WIN;ENABLE_MICROPHONE;ENABLE_IMAGEEFFECTS;ENABLE_WEBCAM;ENABLE_AUDIO_FMOD;UNITY_STANDALONE;ENABLE_NETWORK;ENABLE_MONO;ENABLE_PHYSICS;ENABLE_TERRAIN;ENABLE_CACHING;ENABLE_SUBSTANCE;ENABLE_GENERICS;ENABLE_CLOTH;ENABLE_MOVIES;ENABLE_AUDIO;ENABLE_WWW;ENABLE_SHADOWS;ENABLE_DUCK_TYPING;UNITY_4_1_5;UNITY_4_1;ENABLE_PROFILER;UNITY_EDITOR - prompt - 4 - 0169 - - - pdbonly - true - Temp\bin\Release\ - TRACE - prompt - 4 - 0169 - - - - - - - C:/Program Files (x86)/Unity/Editor/Data/Managed/UnityEngine.dll - - - C:/Program Files (x86)/Unity/Editor/Data/Managed/UnityEditor.dll - - - - - - - - - - - - - - - - - - Assets\protobuf-net.dll - - - - - - diff --git a/clients/unity/simple_sample/Assembly-CSharp.csproj b/clients/unity/simple_sample/Assembly-CSharp.csproj deleted file mode 100644 index 0ad90a354..000000000 --- a/clients/unity/simple_sample/Assembly-CSharp.csproj +++ /dev/null @@ -1,73 +0,0 @@ - - - - Debug - AnyCPU - 10.0.20506 - 2.0 - {AE3AFC6C-A022-3549-CF6C-7716EC410CE6} - Library - Properties - - Assembly-CSharp - v3.5 - 512 - - - true - full - false - Temp\bin\Debug\ - DEBUG;TRACE;UNITY_STANDALONE_WIN;ENABLE_MICROPHONE;ENABLE_IMAGEEFFECTS;ENABLE_WEBCAM;ENABLE_AUDIO_FMOD;UNITY_STANDALONE;ENABLE_NETWORK;ENABLE_MONO;ENABLE_PHYSICS;ENABLE_TERRAIN;ENABLE_CACHING;ENABLE_SUBSTANCE;ENABLE_GENERICS;ENABLE_CLOTH;ENABLE_MOVIES;ENABLE_AUDIO;ENABLE_WWW;ENABLE_SHADOWS;ENABLE_DUCK_TYPING;UNITY_4_1_5;UNITY_4_1;ENABLE_PROFILER;UNITY_EDITOR - prompt - 4 - 0169 - - - pdbonly - true - Temp\bin\Release\ - TRACE - prompt - 4 - 0169 - - - - - - - C:/Program Files (x86)/Unity/Editor/Data/Managed/UnityEngine.dll - - - C:/Program Files (x86)/Unity/Editor/Data/Managed/UnityEditor.dll - - - - - - - - - - - - - - - - - - Assets\protobuf-net.dll - - - - - - diff --git a/clients/unity/simple_sample/Assembly-CSharp.pidb b/clients/unity/simple_sample/Assembly-CSharp.pidb deleted file mode 100644 index b50da3cb0ae079790fc876a130d60aad701f6d88..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 130247 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 diff --git a/clients/unity/simple_sample/Assets/DFHack/isoworldremote.pb.cs b/clients/unity/simple_sample/Assets/DFHack/isoworldremote.pb.cs index 46c85e370..95ef929f9 100644 --- a/clients/unity/simple_sample/Assets/DFHack/isoworldremote.pb.cs +++ b/clients/unity/simple_sample/Assets/DFHack/isoworldremote.pb.cs @@ -10,6 +10,37 @@ // Generated from: isoworldremote.proto namespace isoworldremote { + [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"ColorDefinition")] + public partial class ColorDefinition : global::ProtoBuf.IExtensible + { + public ColorDefinition() {} + + private int _red; + [global::ProtoBuf.ProtoMember(1, IsRequired = true, Name=@"red", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + public int red + { + get { return _red; } + set { _red = value; } + } + private int _green; + [global::ProtoBuf.ProtoMember(2, IsRequired = true, Name=@"green", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + public int green + { + get { return _green; } + set { _green = value; } + } + private int _blue; + [global::ProtoBuf.ProtoMember(3, IsRequired = true, Name=@"blue", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] + public int blue + { + get { return _blue; } + set { _blue = value; } + } + private global::ProtoBuf.IExtension extensionObject; + global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) + { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } + } + [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"EmbarkTileLayer")] public partial class EmbarkTileLayer : global::ProtoBuf.IExtensible { @@ -36,6 +67,13 @@ namespace isoworldremote get { return _tile_shape_table; } } + private readonly global::System.Collections.Generic.List _tile_color_table = new global::System.Collections.Generic.List(); + [global::ProtoBuf.ProtoMember(7, Name=@"tile_color_table", DataFormat = global::ProtoBuf.DataFormat.Default)] + public global::System.Collections.Generic.List tile_color_table + { + get { return _tile_color_table; } + } + private global::ProtoBuf.IExtension extensionObject; global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } @@ -306,7 +344,13 @@ namespace isoworldremote WALL = 3, [global::ProtoBuf.ProtoEnum(Name=@"FLOOR", Value=4)] - FLOOR = 4 + FLOOR = 4, + + [global::ProtoBuf.ProtoEnum(Name=@"RAMP_UP", Value=5)] + RAMP_UP = 5, + + [global::ProtoBuf.ProtoEnum(Name=@"RAMP_DOWN", Value=6)] + RAMP_DOWN = 6 } } \ No newline at end of file diff --git a/clients/unity/simple_sample/Assets/Editor/MapBlockEditor.cs b/clients/unity/simple_sample/Assets/Editor/MapBlockEditor.cs index c4d5c6a1a..db9a093df 100644 --- a/clients/unity/simple_sample/Assets/Editor/MapBlockEditor.cs +++ b/clients/unity/simple_sample/Assets/Editor/MapBlockEditor.cs @@ -65,6 +65,12 @@ public class MapBlockEditor : Editor case BasicShape.OPEN: buttonIcon = "\u00A0"; break; + case BasicShape.RAMP_UP: + buttonIcon = "â–²"; + break; + case BasicShape.RAMP_DOWN: + buttonIcon = "â–¼"; + break; default: buttonIcon = "?"; break; diff --git a/clients/unity/simple_sample/Assets/MapGen/MapBlock.cs b/clients/unity/simple_sample/Assets/MapGen/MapBlock.cs index 6d8f7014a..489299fdc 100644 --- a/clients/unity/simple_sample/Assets/MapGen/MapBlock.cs +++ b/clients/unity/simple_sample/Assets/MapGen/MapBlock.cs @@ -6,6 +6,7 @@ using isoworldremote; public class MapBlock : MonoBehaviour { public static float floorHeight = 0.1f; + public static float rampDistance = 2.0f; DFCoord coordinates; GameMap parent; @@ -148,17 +149,68 @@ public class MapBlock : MonoBehaviour return GetSingleTile(relativePosition); } + enum Layer + { + Base, + Floor, + Top + } + + float convertDistanceToOffset(float input) + { + if (input == float.MaxValue) + return 0; + input = Mathf.Pow(input, 0.5f); + input = (rampDistance - input) / rampDistance; + if (input < 0) + return 0; + return Mathf.Sin(input * Mathf.PI / 4.0f); + } + + Vector3 AdjustForRamps(Vector3 input, Layer layer = Layer.Floor) + { + float nearestUpRamp = float.MaxValue; + float nearestDownRamp = float.MaxValue; + for (int x = (int)(input.x - rampDistance); x < (int)(input.x + rampDistance + 1.0f); x++) + for (int y = (int)(-input.z - rampDistance); y < (int)(-input.z + rampDistance + 1.0f); y++) + { + BasicShape tile = GetSingleTile(new DFCoord2d(x, y)); + if(tile == BasicShape.RAMP_UP || tile == BasicShape.RAMP_DOWN) + { + float tempDistance = Mathf.Pow(input.x - x, 2) + Mathf.Pow(-input.z - y, 2); + if (tile == BasicShape.RAMP_DOWN && tempDistance < nearestDownRamp) + nearestDownRamp = tempDistance; + if (tile == BasicShape.RAMP_UP && tempDistance < nearestUpRamp) + nearestUpRamp = tempDistance; + } + } + + nearestUpRamp = convertDistanceToOffset(nearestUpRamp); + nearestDownRamp = convertDistanceToOffset(nearestDownRamp); + + if (layer == Layer.Floor) + input.y = input.y + nearestUpRamp - nearestDownRamp; + if (layer == Layer.Top) + input.y = input.y - nearestUpRamp; + + return input; + } + void AddSideFace(DFCoord2d position, FaceDirection direction) { + Layer topLayer = Layer.Top; + Layer bottomLayer = Layer.Base; float currentFloorHeight = -0.5f; float adjacentFloorHeight = -0.5f; switch (GetSingleTile(position)) { case BasicShape.WALL: currentFloorHeight = 0.5f; + topLayer = Layer.Top; break; case BasicShape.FLOOR: currentFloorHeight = floorHeight - 0.5f; + topLayer = Layer.Floor; break; default: break; @@ -167,9 +219,11 @@ public class MapBlock : MonoBehaviour { case BasicShape.WALL: adjacentFloorHeight = 0.5f; + bottomLayer = Layer.Top; break; case BasicShape.FLOOR: adjacentFloorHeight = floorHeight - 0.5f; + bottomLayer = Layer.Floor; break; default: break; @@ -181,31 +235,31 @@ public class MapBlock : MonoBehaviour switch (direction) { case FaceDirection.North: - finalVertices.Add(new Vector3(position.x + 0.5f, currentFloorHeight, -(position.y - 0.5f))); - finalVertices.Add(new Vector3(position.x - 0.5f, currentFloorHeight, -(position.y - 0.5f))); - finalVertices.Add(new Vector3(position.x + 0.5f, adjacentFloorHeight, -(position.y - 0.5f))); - finalVertices.Add(new Vector3(position.x - 0.5f, adjacentFloorHeight, -(position.y - 0.5f))); + finalVertices.Add(AdjustForRamps(new Vector3(position.x + 0.5f, currentFloorHeight, -(position.y - 0.5f)), topLayer)); + finalVertices.Add(AdjustForRamps(new Vector3(position.x - 0.5f, currentFloorHeight, -(position.y - 0.5f)), topLayer)); + finalVertices.Add(AdjustForRamps(new Vector3(position.x + 0.5f, adjacentFloorHeight, -(position.y - 0.5f)), bottomLayer)); + finalVertices.Add(AdjustForRamps(new Vector3(position.x - 0.5f, adjacentFloorHeight, -(position.y - 0.5f)), bottomLayer)); uvPos = position.x; break; case FaceDirection.South: - finalVertices.Add(new Vector3(position.x - 0.5f, currentFloorHeight, -(position.y + 0.5f))); - finalVertices.Add(new Vector3(position.x + 0.5f, currentFloorHeight, -(position.y + 0.5f))); - finalVertices.Add(new Vector3(position.x - 0.5f, adjacentFloorHeight, -(position.y + 0.5f))); - finalVertices.Add(new Vector3(position.x + 0.5f, adjacentFloorHeight, -(position.y + 0.5f))); + finalVertices.Add(AdjustForRamps(new Vector3(position.x - 0.5f, currentFloorHeight, -(position.y + 0.5f)), topLayer)); + finalVertices.Add(AdjustForRamps(new Vector3(position.x + 0.5f, currentFloorHeight, -(position.y + 0.5f)), topLayer)); + finalVertices.Add(AdjustForRamps(new Vector3(position.x - 0.5f, adjacentFloorHeight, -(position.y + 0.5f)), bottomLayer)); + finalVertices.Add(AdjustForRamps(new Vector3(position.x + 0.5f, adjacentFloorHeight, -(position.y + 0.5f)), bottomLayer)); uvPos = 16 - position.x; break; case FaceDirection.East: - finalVertices.Add(new Vector3(position.x + 0.5f, currentFloorHeight, -(position.y + 0.5f))); - finalVertices.Add(new Vector3(position.x + 0.5f, currentFloorHeight, -(position.y - 0.5f))); - finalVertices.Add(new Vector3(position.x + 0.5f, adjacentFloorHeight, -(position.y + 0.5f))); - finalVertices.Add(new Vector3(position.x + 0.5f, adjacentFloorHeight, -(position.y - 0.5f))); + finalVertices.Add(AdjustForRamps(new Vector3(position.x + 0.5f, currentFloorHeight, -(position.y + 0.5f)), topLayer)); + finalVertices.Add(AdjustForRamps(new Vector3(position.x + 0.5f, currentFloorHeight, -(position.y - 0.5f)), topLayer)); + finalVertices.Add(AdjustForRamps(new Vector3(position.x + 0.5f, adjacentFloorHeight, -(position.y + 0.5f)), bottomLayer)); + finalVertices.Add(AdjustForRamps(new Vector3(position.x + 0.5f, adjacentFloorHeight, -(position.y - 0.5f)), bottomLayer)); uvPos = position.y; break; case FaceDirection.West: - finalVertices.Add(new Vector3(position.x - 0.5f, currentFloorHeight, -(position.y - 0.5f))); - finalVertices.Add(new Vector3(position.x - 0.5f, currentFloorHeight, -(position.y + 0.5f))); - finalVertices.Add(new Vector3(position.x - 0.5f, adjacentFloorHeight, -(position.y - 0.5f))); - finalVertices.Add(new Vector3(position.x - 0.5f, adjacentFloorHeight, -(position.y + 0.5f))); + finalVertices.Add(AdjustForRamps(new Vector3(position.x - 0.5f, currentFloorHeight, -(position.y - 0.5f)), topLayer)); + finalVertices.Add(AdjustForRamps(new Vector3(position.x - 0.5f, currentFloorHeight, -(position.y + 0.5f)), topLayer)); + finalVertices.Add(AdjustForRamps(new Vector3(position.x - 0.5f, adjacentFloorHeight, -(position.y - 0.5f)), bottomLayer)); + finalVertices.Add(AdjustForRamps(new Vector3(position.x - 0.5f, adjacentFloorHeight, -(position.y + 0.5f)), bottomLayer)); uvPos = 16 - position.y; break; default: @@ -232,14 +286,19 @@ public class MapBlock : MonoBehaviour void AddTopFace(DFCoord2d position, float height) { + Layer layer = Layer.Base; + if (GetSingleTile(position) == BasicShape.FLOOR) + layer = Layer.Floor; + else if (GetSingleTile(position) == BasicShape.WALL) + layer = Layer.Top; height -= 0.5f; //Todo: Weld vertices that should be welded //On second though, not with vertex colors there. int startindex = finalVertices.Count; - finalVertices.Add(new Vector3(position.x - 0.5f, height, -(position.y - 0.5f))); - finalVertices.Add(new Vector3(position.x + 0.5f, height, -(position.y - 0.5f))); - finalVertices.Add(new Vector3(position.x - 0.5f, height, -(position.y + 0.5f))); - finalVertices.Add(new Vector3(position.x + 0.5f, height, -(position.y + 0.5f))); + finalVertices.Add(AdjustForRamps(new Vector3(position.x - 0.5f, height, -(position.y - 0.5f)), layer)); + finalVertices.Add(AdjustForRamps(new Vector3(position.x + 0.5f, height, -(position.y - 0.5f)), layer)); + finalVertices.Add(AdjustForRamps(new Vector3(position.x - 0.5f, height, -(position.y + 0.5f)), layer)); + finalVertices.Add(AdjustForRamps(new Vector3(position.x + 0.5f, height, -(position.y + 0.5f)), layer)); finalUVs.Add(new Vector2((float)(position.x) / 16.0f, -(float)(position.y) / 16.0f)); finalUVs.Add(new Vector2((float)(position.x + 1) / 16.0f, -(float)(position.y) / 16.0f)); diff --git a/clients/unity/simple_sample/Assets/Start.unity b/clients/unity/simple_sample/Assets/Start.unity index 71c6310525a2ed7a272d3b212a3160c51e00771e..c8dc8435315d5315f1e4cf1b62037df434c2cb3b 100644 GIT binary patch delta 14250 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 F{|_Ra=Ai%p delta 7655 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 diff --git a/clients/unity/simple_sample/Library/ScriptAssemblies/Assembly-CSharp.dll b/clients/unity/simple_sample/Library/ScriptAssemblies/Assembly-CSharp.dll deleted file mode 100644 index 9a5761e466229a606677693b7ffd70b9c235f847..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 88064 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 IqbKYC0_Iv|PXGV_ diff --git a/clients/unity/simple_sample/Library/ScriptAssemblies/CompilationCompleted.txt b/clients/unity/simple_sample/Library/ScriptAssemblies/CompilationCompleted.txt deleted file mode 100644 index d25ad0dae..000000000 --- a/clients/unity/simple_sample/Library/ScriptAssemblies/CompilationCompleted.txt +++ /dev/null @@ -1 +0,0 @@ -Completed diff --git a/clients/unity/simple_sample/Library/assetDatabase3 b/clients/unity/simple_sample/Library/assetDatabase3 index 79a8b56cca373f7e2d319ff16dff830ff982202a..819bca161905da2e0b00e216a6db8d984abaf1fc 100644 GIT binary patch delta 49 zcmV-10M7sL@&WMj0kA3*1d3~6W0NivWCY)68)LJU6p#S~&SGGBvnm!y1O=hINy!qk HcN+O#{rVHn delta 49 zcmV-10M7sL@&WMj0kA3*1kxWC2$L=pWCSADIR&$p6p#S~+-__Kvnm!y1O-$-g&GmF HcN+O##=a2^ diff --git a/clients/unity/simple_sample/Library/metadata/49/49176d7675a998345966feca21555311 b/clients/unity/simple_sample/Library/metadata/49/49176d7675a998345966feca21555311 index 35b1bc928fa4bd08c924696ff972db7dd3750cce..f1ac8e88ac97c71240486ea734bf3c5f2b4e2860 100644 GIT binary patch delta 590 zcmey^&3JYeBL@S6;ARE}U(1ag>jXIuS}`ybGXU{qLm|=0R|GGxIRi!X^(Su>a-V!a zh<)=9q1BB1&iOg{MJ}mnnR%HdnfZB>{j6j##0u37F~rWv$T1hCrc5?4Q=MF`BQRM{ zju*_oXy7!tPL>>!8$)G!DKXqFU68KzNS%|Mej=V!Z!K5wc%t3MSdByFtSsKFUibFjZX#z-Q+$|7mUEUFRCG8uA|_Wn44|WR7$~C!4#xa3(R-%5BGyBHbYYkk_0L@o80JH002%*z1;u+ delta 75 zcmX>*i}7POBL@S6;ARE}*Si}z)(LW^8Z$5yGXU{qLm|=0R|GGxJvU-t(AS^5QOJGr f0U`FyKZI5@PX4XLwYg9-i*56I#VoDKcYO)~fW8@@ diff --git a/clients/unity/simple_sample/Library/metadata/6e/6e1305e96d61f204f8229e0a0cb7f8c1 b/clients/unity/simple_sample/Library/metadata/6e/6e1305e96d61f204f8229e0a0cb7f8c1 index a5f934d8fa971d0a7529460c592ace99ccd300fe..4293ba5254d2b2ada9967cd6365972941b644bdf 100644 GIT binary patch delta 94 zcmccVdeNPOfkALH1B3G3jU4L)Iei5g7>XHyc(S69=;SMcN0`nFY@Q|L#WlG`T7W&s p(KjGIG+^>XX-(!w(>6^ul=0vMi@ErR`$0wb07We}Kau&$3IIH%9=QMj delta 48 zcmccUe$$nMfkALH1B24hjU4L)IYR{)7>XHyc(S69=;SMcN0_ejZ=NOO#kKj4>{nI* DQ}YiF diff --git a/clients/unity/simple_sample/Library/metadata/8d/8d11b6dacbf85e24ead2e95cafce40fd b/clients/unity/simple_sample/Library/metadata/8d/8d11b6dacbf85e24ead2e95cafce40fd index e5cccaf31ceb5604e9864298f30e0deda71f42bb..4be65887e7c36a68134bbda8d4e1fa4c3baeae9a 100644 GIT binary patch delta 2818 zcma)8&2Q646gRMlh|e}{L&cKa*9Ka zIuw(n-aSdmUwjsO+8cX5AxVxTNxSg`dDHvy@Qn$w8-GcL`ugLxzE#N^4%W>L1UZ=0 zvU`QT(VjXot6Q+B*N}bcIMC-${==46bO))8ZJ}&gc4)t5Rruks8X#tdl&@;dpz&M28hwlY!<{;}bCHP#gz`;hiYMUN~n}+GJ zAM;5qQ0tepY(OVa=r-EGmOTaYn|G@YE?D*|O^YM@uU%>?PY0A)QfR8&BB?m9U4zPeND8mO*u3StPi$8_}70U|Bie+EzU_&R2NRDL1b - - - - - - - \ No newline at end of file diff --git a/plugins/proto/isoworldremote.proto b/plugins/proto/isoworldremote.proto index 295cd03f1..811df6dfa 100644 --- a/plugins/proto/isoworldremote.proto +++ b/plugins/proto/isoworldremote.proto @@ -37,7 +37,7 @@ message EmbarkTileLayer { repeated BasicMaterial mat_type_table = 4 [packed=true]; repeated int32 mat_subtype_table = 5 [packed=true]; repeated BasicShape tile_shape_table = 6 [packed=true]; - repeated ColorDefinition tile_color_table = 7 [packed=true]; + repeated ColorDefinition tile_color_table = 7; } message EmbarkTile { From 274da058389b7504a3f4e6019f15b1fa4dc54722 Mon Sep 17 00:00:00 2001 From: Japa Date: Tue, 23 Jul 2013 07:42:09 +0530 Subject: [PATCH 61/72] Converted project to unity 4.2 --- .../simple_sample/Assets/ArenaMode.png.meta | 36 ++++++++++++++++++ clients/unity/simple_sample/Assets/Bad.mat | Bin 4212 -> 643 bytes .../unity/simple_sample/Assets/Bad.mat.meta | 4 ++ .../unity/simple_sample/Assets/DFHack.meta | 5 +++ .../Assets/DFHack/isoworldremote.pb.cs.meta | 8 ++++ .../unity/simple_sample/Assets/Editor.meta | 5 +++ .../Assets/Editor/MapBlockEditor.cs.meta | 8 ++++ .../unity/simple_sample/Assets/GameWindow.cs | 2 +- .../simple_sample/Assets/GameWindow.cs.meta | 8 ++++ .../unity/simple_sample/Assets/HUDFPS.cs.meta | 8 ++++ .../unity/simple_sample/Assets/MapGen.meta | 5 +++ .../Assets/MapGen/GameMap.cs.meta | 8 ++++ .../Assets/MapGen/MapBlock.cs.meta | 8 ++++ .../simple_sample/Assets/RemoteClient.meta | 5 +++ .../Assets/RemoteClient/Basic.cs.meta | 8 ++++ .../Assets/RemoteClient/BasicApi.cs.meta | 8 ++++ .../Assets/RemoteClient/ColorText.cs.meta | 8 ++++ .../Assets/RemoteClient/CoreProtocol.cs.meta | 8 ++++ .../Assets/RemoteClient/RemoteClient.cs.meta | 8 ++++ .../Assets/RemoteClient/Tools.cs.meta | 8 ++++ .../unity/simple_sample/Assets/Start.unity | Bin 94200 -> 151237 bytes .../simple_sample/Assets/Start.unity.meta | 4 ++ .../simple_sample/Assets/TestScript.cs.meta | 8 ++++ .../unity/simple_sample/Assets/UV Test.mat | Bin 4512 -> 1948 bytes .../simple_sample/Assets/UV Test.mat.meta | 4 ++ .../simple_sample/Assets/UVTest.png.meta | 36 ++++++++++++++++++ .../Assets/VertexColor.shader.meta | 5 +++ .../unity/simple_sample/Assets/grid.png.meta | 36 ++++++++++++++++++ .../Assets/protobuf-net.dll.meta | 7 ++++ .../simple_sample/Library/AssetServerCacheV3 | Bin 5044 -> 5044 bytes .../Library/EditorUserBuildSettings.asset | Bin 4160 -> 4172 bytes .../Library/InspectorExpandedItems.asset | Bin 4292 -> 4292 bytes .../Library/ProjectSettings.asset | Bin 15876 -> 5442 bytes .../unity/simple_sample/Library/ScriptMapper | Bin 8448 -> 10564 bytes .../simple_sample/Library/assetDatabase3 | Bin 31088 -> 31276 bytes .../unity/simple_sample/Library/guidmapper | Bin 5204 -> 5204 bytes .../00/00000000000000002000000000000000 | Bin 4304 -> 4304 bytes .../00/00000000000000003000000000000000 | Bin 4296 -> 4296 bytes .../00/00000000000000004000000000000000 | Bin 4308 -> 4308 bytes .../00/00000000000000004100000000000000 | Bin 4308 -> 4308 bytes .../00/00000000000000006000000000000000 | Bin 4304 -> 4304 bytes .../00/00000000000000006100000000000000 | Bin 0 -> 4308 bytes .../00/00000000000000007000000000000000 | Bin 4304 -> 4304 bytes .../00/00000000000000008000000000000000 | Bin 4308 -> 4308 bytes .../00/00000000000000009000000000000000 | Bin 4308 -> 4308 bytes .../00/0000000000000000a000000000000000 | Bin 4308 -> 4308 bytes .../00/0000000000000000b000000000000000 | Bin 4320 -> 4320 bytes .../00/0000000000000000c000000000000000 | Bin 4308 -> 4308 bytes .../89/89b0f8fea628a544a9855c108fbe35dc | Bin 364159 -> 365122 bytes .../9f/9fd804cbd377fd445805d7e5eea47877 | Bin 10205 -> 10205 bytes .../b5/b54fa8be8a38a9f4e8f53b4399135e30 | Bin 7001 -> 7009 bytes .../d4/d420514133a0fbd4990025b3e1dac764 | Bin 50665 -> 50876 bytes .../eb/eb0b853da2a60f540a81dc515bab1875 | Bin 4284 -> 4284 bytes .../fc/fcc33854b846d0e4aa14f8afb74e173b | Bin 20406 -> 20406 bytes .../ff/ff990239cc3bc4a45a362f932463d378 | Bin 5208 -> 5740 bytes .../ff/ffba25341839373409b0cd511e9b1761 | Bin 722870 -> 724664 bytes .../ProjectSettings/AudioManager.asset | Bin 4124 -> 233 bytes .../ProjectSettings/DynamicsManager.asset | Bin 4280 -> 665 bytes .../ProjectSettings/EditorBuildSettings.asset | Bin 4104 -> 138 bytes .../ProjectSettings/EditorSettings.asset | Bin 4164 -> 295 bytes .../ProjectSettings/GraphicsSettings.asset | 7 ++++ .../ProjectSettings/InputManager.asset | Bin 5252 -> 4897 bytes .../ProjectSettings/NavMeshLayers.asset | Bin 9196 -> 1907 bytes .../ProjectSettings/NetworkManager.asset | Bin 4112 -> 151 bytes .../ProjectSettings/ProjectSettings.asset | Bin 15876 -> 5442 bytes .../ProjectSettings/QualitySettings.asset | Bin 4716 -> 2957 bytes .../ProjectSettings/TagManager.asset | Bin 5352 -> 708 bytes .../ProjectSettings/TimeManager.asset | Bin 4112 -> 175 bytes 68 files changed, 264 insertions(+), 1 deletion(-) create mode 100644 clients/unity/simple_sample/Assets/ArenaMode.png.meta create mode 100644 clients/unity/simple_sample/Assets/Bad.mat.meta create mode 100644 clients/unity/simple_sample/Assets/DFHack.meta create mode 100644 clients/unity/simple_sample/Assets/DFHack/isoworldremote.pb.cs.meta create mode 100644 clients/unity/simple_sample/Assets/Editor.meta create mode 100644 clients/unity/simple_sample/Assets/Editor/MapBlockEditor.cs.meta create mode 100644 clients/unity/simple_sample/Assets/GameWindow.cs.meta create mode 100644 clients/unity/simple_sample/Assets/HUDFPS.cs.meta create mode 100644 clients/unity/simple_sample/Assets/MapGen.meta create mode 100644 clients/unity/simple_sample/Assets/MapGen/GameMap.cs.meta create mode 100644 clients/unity/simple_sample/Assets/MapGen/MapBlock.cs.meta create mode 100644 clients/unity/simple_sample/Assets/RemoteClient.meta create mode 100644 clients/unity/simple_sample/Assets/RemoteClient/Basic.cs.meta create mode 100644 clients/unity/simple_sample/Assets/RemoteClient/BasicApi.cs.meta create mode 100644 clients/unity/simple_sample/Assets/RemoteClient/ColorText.cs.meta create mode 100644 clients/unity/simple_sample/Assets/RemoteClient/CoreProtocol.cs.meta create mode 100644 clients/unity/simple_sample/Assets/RemoteClient/RemoteClient.cs.meta create mode 100644 clients/unity/simple_sample/Assets/RemoteClient/Tools.cs.meta create mode 100644 clients/unity/simple_sample/Assets/Start.unity.meta create mode 100644 clients/unity/simple_sample/Assets/TestScript.cs.meta create mode 100644 clients/unity/simple_sample/Assets/UV Test.mat.meta create mode 100644 clients/unity/simple_sample/Assets/UVTest.png.meta create mode 100644 clients/unity/simple_sample/Assets/VertexColor.shader.meta create mode 100644 clients/unity/simple_sample/Assets/grid.png.meta create mode 100644 clients/unity/simple_sample/Assets/protobuf-net.dll.meta create mode 100644 clients/unity/simple_sample/Library/metadata/00/00000000000000006100000000000000 create mode 100644 clients/unity/simple_sample/ProjectSettings/GraphicsSettings.asset diff --git a/clients/unity/simple_sample/Assets/ArenaMode.png.meta b/clients/unity/simple_sample/Assets/ArenaMode.png.meta new file mode 100644 index 000000000..14108e0a7 --- /dev/null +++ b/clients/unity/simple_sample/Assets/ArenaMode.png.meta @@ -0,0 +1,36 @@ +fileFormatVersion: 2 +guid: 89b0f8fea628a544a9855c108fbe35dc +TextureImporter: + serializedVersion: 2 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + linearTexture: 0 + correctGamma: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: .25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + filterMode: -1 + aniso: -1 + mipBias: -1 + wrapMode: -1 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + alphaIsTransparency: 0 + textureType: -1 + buildTargetSettings: [] + userData: diff --git a/clients/unity/simple_sample/Assets/Bad.mat b/clients/unity/simple_sample/Assets/Bad.mat index 2a21641760ad09663517e11eb6fd119d1dde4df7..33b8991c8345bcf8d42e4523746e0544f602dbd0 100644 GIT binary patch literal 643 zcmb7BO;5ux488YPc!zQ7rnWmEK)hdK_SXau)%2azA-A((b$m3D1Ap(|=%mF9Nf$EQvo z*Tm;qtwDwY1H a3D5cJSd+H^Tl+V5oWkxogrz^xkM;pd+p&WH literal 4212 zcmeHKS##4c5LUS<_kBaS@0OPPZVN3i3^YS2Pt0_bSZU3qc1KoA!;^nGVZW8-C?2KH zJY;7aue6_bSD#jrBgE)WAr2cM#9n&SONd8f6Jw8C6XI{T+a00y33|RrqjW6WVn$|4 zkf94CWIKLxA$HSi@l#?RPKwo~`Nl8RG#}$g&9&unCU%e!t{`|jyf5&FB@oJ}??>QsT+YBHz&6v$JExHG<= zLSK_{QBa`mtdA(X%*o8Sxp0lQVx1XY(Q_3z5-e6Cal7Gs08?G{3xsj}4cZMCJwHqY zwfk4%QUJj#VYw8UYNkmfz*NnHLd7w}8;77~T`TOILglS3&^A6+EAmn|xJ z%%V#;hE*$hJb@pr7zp0R*%7?ZeEpJ2-GRz4m}Y)Oe5CmC>xf@$4gHhgkbE+uw4JOS#4^Yj3c9 zYM@=ReL7%A7p7I)SA#0>iHKVX5Bf`S7dATDaYIYp8DGa$Rg35&ZoO@4T4m|FZqn^E zlpzB{28Ij_8TgMGz-Q}>jQEuI|C{1_Zt07R6Z(ejrJvK~gQq9B9q`|GiSIh}`}X|p EKX}XDo&W#< diff --git a/clients/unity/simple_sample/Assets/Bad.mat.meta b/clients/unity/simple_sample/Assets/Bad.mat.meta new file mode 100644 index 000000000..2cb7b3f0b --- /dev/null +++ b/clients/unity/simple_sample/Assets/Bad.mat.meta @@ -0,0 +1,4 @@ +fileFormatVersion: 2 +guid: 9fd804cbd377fd445805d7e5eea47877 +NativeFormatImporter: + userData: diff --git a/clients/unity/simple_sample/Assets/DFHack.meta b/clients/unity/simple_sample/Assets/DFHack.meta new file mode 100644 index 000000000..283b60fb8 --- /dev/null +++ b/clients/unity/simple_sample/Assets/DFHack.meta @@ -0,0 +1,5 @@ +fileFormatVersion: 2 +guid: fd22bd16464e8784cbd88809cdc697a3 +folderAsset: yes +DefaultImporter: + userData: diff --git a/clients/unity/simple_sample/Assets/DFHack/isoworldremote.pb.cs.meta b/clients/unity/simple_sample/Assets/DFHack/isoworldremote.pb.cs.meta new file mode 100644 index 000000000..24cdda335 --- /dev/null +++ b/clients/unity/simple_sample/Assets/DFHack/isoworldremote.pb.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 49176d7675a998345966feca21555311 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/clients/unity/simple_sample/Assets/Editor.meta b/clients/unity/simple_sample/Assets/Editor.meta new file mode 100644 index 000000000..359b7c636 --- /dev/null +++ b/clients/unity/simple_sample/Assets/Editor.meta @@ -0,0 +1,5 @@ +fileFormatVersion: 2 +guid: f9efc5e870ab48243b2f508f00b7a740 +folderAsset: yes +DefaultImporter: + userData: diff --git a/clients/unity/simple_sample/Assets/Editor/MapBlockEditor.cs.meta b/clients/unity/simple_sample/Assets/Editor/MapBlockEditor.cs.meta new file mode 100644 index 000000000..7e14634d7 --- /dev/null +++ b/clients/unity/simple_sample/Assets/Editor/MapBlockEditor.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 6e1305e96d61f204f8229e0a0cb7f8c1 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/clients/unity/simple_sample/Assets/GameWindow.cs b/clients/unity/simple_sample/Assets/GameWindow.cs index 1760ca4de..a886ea36d 100644 --- a/clients/unity/simple_sample/Assets/GameWindow.cs +++ b/clients/unity/simple_sample/Assets/GameWindow.cs @@ -23,7 +23,7 @@ public class GameWindow : MonoBehaviour float fraction = screenAspect / viewportAspect; - float height = (viewPortHeight / 2.0f) / Mathf.Sin((camera.fov / 2) * Mathf.Deg2Rad); + float height = (viewPortHeight / 2.0f) / Mathf.Sin((camera.fieldOfView / 2) * Mathf.Deg2Rad); transform.localPosition = new Vector3(0, height, -verticalShift); camera.nearClipPlane = height - 1.0001f; diff --git a/clients/unity/simple_sample/Assets/GameWindow.cs.meta b/clients/unity/simple_sample/Assets/GameWindow.cs.meta new file mode 100644 index 000000000..cfc663b20 --- /dev/null +++ b/clients/unity/simple_sample/Assets/GameWindow.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: b54fa8be8a38a9f4e8f53b4399135e30 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/clients/unity/simple_sample/Assets/HUDFPS.cs.meta b/clients/unity/simple_sample/Assets/HUDFPS.cs.meta new file mode 100644 index 000000000..8354414be --- /dev/null +++ b/clients/unity/simple_sample/Assets/HUDFPS.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 2fb12edbd5d56cb4c99ccf773df52492 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/clients/unity/simple_sample/Assets/MapGen.meta b/clients/unity/simple_sample/Assets/MapGen.meta new file mode 100644 index 000000000..4978dd295 --- /dev/null +++ b/clients/unity/simple_sample/Assets/MapGen.meta @@ -0,0 +1,5 @@ +fileFormatVersion: 2 +guid: c7e34aa4b4a41d1478337506ce720e18 +folderAsset: yes +DefaultImporter: + userData: diff --git a/clients/unity/simple_sample/Assets/MapGen/GameMap.cs.meta b/clients/unity/simple_sample/Assets/MapGen/GameMap.cs.meta new file mode 100644 index 000000000..318ffd70a --- /dev/null +++ b/clients/unity/simple_sample/Assets/MapGen/GameMap.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: aa92a0e1eefe93b40bec1e868142e050 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/clients/unity/simple_sample/Assets/MapGen/MapBlock.cs.meta b/clients/unity/simple_sample/Assets/MapGen/MapBlock.cs.meta new file mode 100644 index 000000000..d14ccadbb --- /dev/null +++ b/clients/unity/simple_sample/Assets/MapGen/MapBlock.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 8d11b6dacbf85e24ead2e95cafce40fd +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/clients/unity/simple_sample/Assets/RemoteClient.meta b/clients/unity/simple_sample/Assets/RemoteClient.meta new file mode 100644 index 000000000..c7abf0d2a --- /dev/null +++ b/clients/unity/simple_sample/Assets/RemoteClient.meta @@ -0,0 +1,5 @@ +fileFormatVersion: 2 +guid: e4195866782d0214cb59abbae44f068f +folderAsset: yes +DefaultImporter: + userData: diff --git a/clients/unity/simple_sample/Assets/RemoteClient/Basic.cs.meta b/clients/unity/simple_sample/Assets/RemoteClient/Basic.cs.meta new file mode 100644 index 000000000..a56dd6d40 --- /dev/null +++ b/clients/unity/simple_sample/Assets/RemoteClient/Basic.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 2678d7ad7ff72d248854d487d8f15c21 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/clients/unity/simple_sample/Assets/RemoteClient/BasicApi.cs.meta b/clients/unity/simple_sample/Assets/RemoteClient/BasicApi.cs.meta new file mode 100644 index 000000000..1a1944d8d --- /dev/null +++ b/clients/unity/simple_sample/Assets/RemoteClient/BasicApi.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: ab257b5c0c7259943a5b614e3dde558e +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/clients/unity/simple_sample/Assets/RemoteClient/ColorText.cs.meta b/clients/unity/simple_sample/Assets/RemoteClient/ColorText.cs.meta new file mode 100644 index 000000000..2df78fd3d --- /dev/null +++ b/clients/unity/simple_sample/Assets/RemoteClient/ColorText.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 8401f7b1211481b469ac746534a896b8 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/clients/unity/simple_sample/Assets/RemoteClient/CoreProtocol.cs.meta b/clients/unity/simple_sample/Assets/RemoteClient/CoreProtocol.cs.meta new file mode 100644 index 000000000..23e58ec8e --- /dev/null +++ b/clients/unity/simple_sample/Assets/RemoteClient/CoreProtocol.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: d8595cea157337845be980bcc8978623 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/clients/unity/simple_sample/Assets/RemoteClient/RemoteClient.cs.meta b/clients/unity/simple_sample/Assets/RemoteClient/RemoteClient.cs.meta new file mode 100644 index 000000000..963cec8cc --- /dev/null +++ b/clients/unity/simple_sample/Assets/RemoteClient/RemoteClient.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 73b3c5754a89e43409dcf23866eb0484 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/clients/unity/simple_sample/Assets/RemoteClient/Tools.cs.meta b/clients/unity/simple_sample/Assets/RemoteClient/Tools.cs.meta new file mode 100644 index 000000000..42106832f --- /dev/null +++ b/clients/unity/simple_sample/Assets/RemoteClient/Tools.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 364a32494f42e934bae30ff47badc45a +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/clients/unity/simple_sample/Assets/Start.unity b/clients/unity/simple_sample/Assets/Start.unity index c8dc8435315d5315f1e4cf1b62037df434c2cb3b..a3dc53f88cc58bd6c9726e21729798f2cf475188 100644 GIT binary patch literal 151237 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 literal 94200 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 GE%FP3-}J2j literal 4512 zcmeHLOLH7G5S9}j!QmB1cw;ua5?%(|Ng%{=Y$x8t5R)-YmLU5LF+Sz?W);nsXukMKD9 z(z}<%V~je$p;_X*EWjMZ`GcMr9VNTO#8+})`9@?2qjGy+(^`&%{l%Kl5*A+QzH0d@ zB4*LIin*C348%sWdZ#b7=t?8G_qgq>AefcyzU(RuR;N#H>vJsT!+tic+??$*Lgu*m-8izmt)Dx3Bo{JZqSQWU}nJYbLb>t zOdgK)d|~H!tKnED2?Hr}BE7l>*mDpcaW{#~sHM}P(q^>XSIU49xu?2CXQV78FW9km zyX1C@4&;!~chvqyvS(2*7O2A}^OBzec?uEtvhSzRhcYS(3beiABML7~nHe`1uJK-^ zGs7$TY7LGAiVy-Rku+Do#AH&eV|gNM~zyH2p~L1?;wzo5^A=sgF|1z69|th?O8%q>iSd&v zdBOAJCQz;9#Q?%`UDPm+!zB+?sKOF{HH}kk2|wq9a!W@&=ktW&e1RoQi0})rk+^)J zR|)?VT_lXit(QXx|BS&0a15&xeldWlC;vHNT=J6$zvTIG6Q~lt96&IOx390Sxd#W% zrpq2shz9R5yE2;f70*6Hc8Im_vi%D8xRe{*vi2ReuTHc}wyy>3=)$xb#~V<^Lu%ku z!iBXI;|Gl&|NQml7e9CYzPNtj^7nY!(Tn1dQzw^Z|JZsUZeN=F<-4ZsWz+O$%D|L? zDFagm{@)Dnm;AlP9YycsI03}UCMS&VS-jJ=w`7#idn`_Y{5QOO<#Yhyvcj14`-9;Y zeRGsj#o$Y|eNE9DDLE=JPy)D{(Qe;Voc#xfoXMY&QOu`Pkry3oIbBxprP`+d6l5IB z{ffJ4Ow0>k$@G;QB~hZXOo-oqm|NkT-FRUB`e_-*8+d8+xlT%%zx8ST3{|JJ1LGvW Q!ag?!QHFm$T(@`s7i-87i2wiq diff --git a/clients/unity/simple_sample/Assets/UV Test.mat.meta b/clients/unity/simple_sample/Assets/UV Test.mat.meta new file mode 100644 index 000000000..2289ffe49 --- /dev/null +++ b/clients/unity/simple_sample/Assets/UV Test.mat.meta @@ -0,0 +1,4 @@ +fileFormatVersion: 2 +guid: fcc33854b846d0e4aa14f8afb74e173b +NativeFormatImporter: + userData: diff --git a/clients/unity/simple_sample/Assets/UVTest.png.meta b/clients/unity/simple_sample/Assets/UVTest.png.meta new file mode 100644 index 000000000..a485b192e --- /dev/null +++ b/clients/unity/simple_sample/Assets/UVTest.png.meta @@ -0,0 +1,36 @@ +fileFormatVersion: 2 +guid: ffba25341839373409b0cd511e9b1761 +TextureImporter: + serializedVersion: 2 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + linearTexture: 0 + correctGamma: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: .25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + filterMode: -1 + aniso: -1 + mipBias: -1 + wrapMode: -1 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + alphaIsTransparency: 0 + textureType: -1 + buildTargetSettings: [] + userData: diff --git a/clients/unity/simple_sample/Assets/VertexColor.shader.meta b/clients/unity/simple_sample/Assets/VertexColor.shader.meta new file mode 100644 index 000000000..237dcdef8 --- /dev/null +++ b/clients/unity/simple_sample/Assets/VertexColor.shader.meta @@ -0,0 +1,5 @@ +fileFormatVersion: 2 +guid: ff990239cc3bc4a45a362f932463d378 +ShaderImporter: + defaultTextures: [] + userData: diff --git a/clients/unity/simple_sample/Assets/grid.png.meta b/clients/unity/simple_sample/Assets/grid.png.meta new file mode 100644 index 000000000..4119659c4 --- /dev/null +++ b/clients/unity/simple_sample/Assets/grid.png.meta @@ -0,0 +1,36 @@ +fileFormatVersion: 2 +guid: d420514133a0fbd4990025b3e1dac764 +TextureImporter: + serializedVersion: 2 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + linearTexture: 0 + correctGamma: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: .25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + filterMode: -1 + aniso: -1 + mipBias: -1 + wrapMode: -1 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + alphaIsTransparency: 0 + textureType: -1 + buildTargetSettings: [] + userData: diff --git a/clients/unity/simple_sample/Assets/protobuf-net.dll.meta b/clients/unity/simple_sample/Assets/protobuf-net.dll.meta new file mode 100644 index 000000000..5f3a48edb --- /dev/null +++ b/clients/unity/simple_sample/Assets/protobuf-net.dll.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 8946b1d409fcda6499e46ca0fd310b73 +MonoAssemblyImporter: + serializedVersion: 1 + iconMap: {} + executionOrder: {} + userData: diff --git a/clients/unity/simple_sample/Library/AssetServerCacheV3 b/clients/unity/simple_sample/Library/AssetServerCacheV3 index 581a08626eae528151166548bb07b1da1d57da93..46d624a86203e3f200c7421fb726c8016bc9d3d8 100644 GIT binary patch delta 16 Xcmdm@zD0e47^{(6yX+EtCZW delta 16 Xcmdm@zD0e47^|V4X`10i>6yX+EuRGi diff --git a/clients/unity/simple_sample/Library/EditorUserBuildSettings.asset b/clients/unity/simple_sample/Library/EditorUserBuildSettings.asset index c7036fef2536acb8cb5e0a026752000a46d553e8..26efb14f654f9db7a2ed02b7725c05d040c5c209 100644 GIT binary patch delta 250 zcmX@0a7ICzfq|`vfkD8Bfq{V&NCPPb1`|CaJ%copiPCnAQX8XYvPih*B_`#hdZZ?% z6DY0ob8laR8$#UnpA>NCl8XfMaVjpX6B@XR2HOyO;G@v1Ogzt k85}?a1c3NpF(B=;c^>N|PEJ;+5bNZPtl9#i5Or`802M6HQiF6jj& delta 16 XcmX@2ctml67^|V4X`10i>6HQiF7yQ^ diff --git a/clients/unity/simple_sample/Library/ProjectSettings.asset b/clients/unity/simple_sample/Library/ProjectSettings.asset index a2bbdd166daf7be12621a2f2f74fee0fafdea54b..941fe42d608b64f33b38373441e4d4648e89149a 100644 GIT binary patch literal 5442 zcmbtYO;aN|6214Ys5#7@8Uh=d2H*VAfTL~fpv=%a8ykdNCEHr6q#8*D_H^uj-2!J@ zj*gB<+v#3L|LA;}XKcrH%&ir2ZF(P~D1V$S|HBh|BT{~qF$kj*hz-|*W#Vt1{=u~o zO7@~I#C@4+CDOT8E0J;SZBxEtWoF|C17S!0P=j){qGAuK?is0gVK1z4$=jamtc@QN*}x{s%xLZK1)sDB~v~r7JSZ=XR;KUtDng zX9i^OP8#V~A%RYBOX=bk8mV*M=$OsAD`6!!;RHEL=vItFsHsW=5Rr9UaGq>NgToze zI7?q)*^3Z2LUr#ATf>Fx5r{(5_-jJmEi#($95Cpe9-6c-`#Y7@$B6pmV+1t7C&MRU z(BZN<`d^_wIwuYj4%Jt{FOPI@tfi<3?SBaDNSzNhawz9aUp%r=UZZFeu#CRtk8xQP zXkfIoDd75!ZrF{JC_3w%B1X67Q}3+$vvc0-oV31NR)5dz1_Q=_6Z4Ide1I+h6sO3a zSPAMop!{(_^<#{l3e&MiK=|u>LhjY)<>|%6s=HcUq@PxoXWa{ytd^fIPcAM$Ez^WR zzr8~}*gD5_s4&|6?m;(nr9y`Z+NqFn`c$txZ#3vXV1(wWYmqFQC_rirC`{Q|L0@rF ztYL+4=dofbG9d7TKl98FM;~EKO<16;gN6bOngkjJVfrN0%2g{JebOxWFu~6WF21$}y6s-GD>-65<+Oe1~B#05XWz0JN~ngSZlvmY}RO z1ExV;P%OTL%JG-2urnE#D9j2?%W-WR+g%psWC#^g%WNu$-Dd&b;s!$npdJ6xaDfEA z%b2Cr^!vF}mIin4HLnNZJN>@PK9s({yNbur1qDTWuQ*{F*V{4A8DK@w(RJf1AFPejG;d0vE21?oCh9^%`wvE{{r)s9`d0LQ|KA4B}76qHbBt*fX>p&9YUA|OVAR(Zf%<~;M z5ZZ()rDiuE#xxk<0i^x49lhe{=T~;0-)YzJTxicB-m+SSRKEQ>ZCikvD;IBD*v1AY zA97863D?)$&TEA+FL)L--dd~T()}agP2Jd-lE4^eKJS=Xn9Dv43Ea;JN&UG|n+`UmN4Ss>7qd3V~{y$#jA`>Fc#2KGPhAHlR1I zzX__jIuej3?%!n#z70iGE1Pa}PjCPVCBcz-e1gp5vm*0uQ5$|7#x*gtRsWaYd&6I? zua7ij1#^s35GuN9gHeE1)*U>jfn literal 15876 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 diff --git a/clients/unity/simple_sample/Library/ScriptMapper b/clients/unity/simple_sample/Library/ScriptMapper index 6ed5d0dae22e44d3b55564376595a0b4e074a50f..1d547bf9c32ddd267e92111fc69efd36800d6176 100644 GIT binary patch delta 527 zcmYLFO-lk%6n)M(mWc7@i}|85vSg5)C<#K`#2^&8s36+35PODTkfu;OTe^M(wQ$wS zrAP}GErOQ)ffhn7`T?yY=-!9W;+(nnoOjQg`?@=?haMr)2O)k)2#FIy;X_D1w~dm970OkPGnN-Nym3jkHKk0Hr=8C!qyrO1+%PJ~OQ9lTMER>0; zf7J}{dQruNG>^ZiX5#-ZVOGPO3k}XJMESjzf^ICdcMY>6I{HgG*1Lk6f*NQL0PY&HY6aFKs4)P(O6eph!J{yl zn-*@kZF#^Q3)Al`OnDakCEU1;x^JU?Uh-_22LT4H^o5T S5_;0bY~RIu%5DL;=LUc15Nr4V delta 51 zcmX>S)Ziq|z`*o?fkBZ02sjxS1VA){iJqaJX`10iX)h)w2EongOmle|vp2H}{1yNJ D;^hg= diff --git a/clients/unity/simple_sample/Library/assetDatabase3 b/clients/unity/simple_sample/Library/assetDatabase3 index 819bca161905da2e0b00e216a6db8d984abaf1fc..379e16f02506247685c932115141cfaa76acc4ac 100644 GIT binary patch delta 997 zcmZ9LUr19?9LLY8>zS3hxqEkaH#O(9Etg)Gjs8hd`6mk^Q6V1+9BXsByY0HoniVyA z%|iXrAEIa#ghk|J{ZS$C!5}ImA*ddT-s+)0CO$+jbP=lp)(-#_k|o5%MT za1lcM6@*SyA%s?GoY5@u$hERN;2A4&81hdA5c;}u@pFP(5g=(OxUCv6oHpcQG3zU= zTY;T$(_$W$h}h;&B)TJAaoHP>`x6L#+}wSMpMiJ0gEU6AQ{)7hB*F{_B?(#tBYD=x zjzOVTr!!J?z?hjY-5c|&!ERst|C|U-fcp{;mjx#|HqWHff}Py$V3;ur!zL?PsMkVf zz-Drgv+tK2(5ZPIe`cPP$zE`)@a08*2BGok#R!vFF!q6Z5i03nS8q%%^5PCdPIT#h z{-9{5?Lo6B>UVZ7M$@GsRL1U8qDUewtj0A_CePX!z7`$2Gd`*=hcb%=M6={78l~ra zO}U$HD_+yk)a>e`B<8$xXfCJ`%3wq?l3hDkswv4u>TFCir{U~jc5Ac9M0vun-LhZTx1M4J zn{C`862oOCcw@2aqq`|0lxn9TJPb)96j|4h@e52{Wp&68+9(>AXKYJ&V+px0(w*q1 zgQky#S&H8-CP`Uqb#D(*bizi3&%UxIn;=!3D~N0>2pKfH^kaa&vltg-^SwR}>!H`b ziJKmEcEX6?11*6(_~H*jx{=Ga2NVt)m;Jwb+%Oo*f$ESC3osNqhfPqTgdn|*g8@Z_ zWLN-0IEW<}I>N(1cnVwKK;$I0va=z~!KcVkm}=#qIl7ChzPe!=2BL1*s^-D-s0ta) zHmC}un>cu=s<;%^^+vG`Dnnb~Rj(V;9uCx4F673JVmpLmQCtomVqGvE&x4kD5UvD|Pl>Cs-;^<=%xnEA7&P}{&a?LnS+Iq~+pX6ej7G)o&9?r-4EPkN`Ixxa#I I-Q!jM0ya%f5dZ)H delta 871 zcmY*YL1@!Z7=CZdB7@p>O`0ZYmC|-Ol$mw2Ly!s1$*8E%=@4WLnRFSlbf!&&cH5yS zdePH0wNXwZ4!(__kSA8{G zJrLqz&fHWL772XaziR3};M(Z%ZhIR}rul!?*P!1q60x`O2OOEAf42kg`A=-K>)}QE zTE^0f^ZV)hbr#fkCz%NR6j)f~eGTi=Cgp5mC-#eHDr#XXmyp2GeSa;94k1>dLYAFN zf*-sA7G{MG$4gm=(Ub42?vNOEvj=V*twseYG3+$vMXALe>?NfV;7Ma3XUG>u&KU)h zn_fEd)Vmd;9l<9tQ1Ku^r^1x@K)(Co*=7p6VUMzx`t!c@1ky?ZH^7vl!%f9i;)l`{ zZmhD8hU3@^J-K}lRO6U|GkG3=7GTWz0kU`7tcOW%3jO zYhBd*?af|DYViq;f^jVmdCfJERq-y!WOY!pF4)MX;X{^!-dq||ISQ6?DlFt&kkHdO z3{(0LjsQ0F3By$?8Y+dGs_vqN1eV}*p)1r*5@;mn8~GzfpDn)mPO7=y4^k}$ONGOf Q8+pG1H5#Qpt~^ft2f9W0)c^nh diff --git a/clients/unity/simple_sample/Library/guidmapper b/clients/unity/simple_sample/Library/guidmapper index 65671f8fee1bcddce8fafd64edf7a9e9b79a3ee5..c5e0dbedcbc79d3de9a2be210270c7473e43bba1 100644 GIT binary patch delta 16 XcmcbjaYbW-7^{(8%0)Flhxz delta 16 XcmcbhctLT37^|V4X`10i>8%0)Fmwe< diff --git a/clients/unity/simple_sample/Library/metadata/00/00000000000000003000000000000000 b/clients/unity/simple_sample/Library/metadata/00/00000000000000003000000000000000 index 9cc1a8054f28819100028fb562df026d42912876..5e239345207001e847a7bd146401e0c5dbf1bf97 100644 GIT binary patch delta 16 XcmX@1ctUZ47^{(9qm?FKGoa delta 16 XcmX@1ctUZ47^|V4X`10i>9qm?FLVVm diff --git a/clients/unity/simple_sample/Library/metadata/00/00000000000000004000000000000000 b/clients/unity/simple_sample/Library/metadata/00/00000000000000004000000000000000 index 9c7d301af4fc0cc183b5c999cddbf60d3c6f1943..d9266eac74965a6df3062ec41fa179595b6cee13 100644 GIT binary patch delta 16 Xcmcbjctvr77^{(74=qFzE$V delta 16 Xcmcbjctvr77^|V4X`10i>74=qF!Tjh diff --git a/clients/unity/simple_sample/Library/metadata/00/00000000000000004100000000000000 b/clients/unity/simple_sample/Library/metadata/00/00000000000000004100000000000000 index df1ce309ba629b3d58284372a2a2c2f8b0582e7c..03310642c1849d7b4820b5fa488392296a11f332 100644 GIT binary patch delta 16 Xcmcbjctvr77^{(74=qFzE$V delta 16 Xcmcbjctvr77^|V4X`10i>74=qF!Tjh diff --git a/clients/unity/simple_sample/Library/metadata/00/00000000000000006000000000000000 b/clients/unity/simple_sample/Library/metadata/00/00000000000000006000000000000000 index ae25318c7568c595706048911840e429de163a2f..f0ad51fa088fde7d736c10b38468ef022e4178e9 100644 GIT binary patch delta 16 XcmcbhctLT37^{(8%0)Flhxz delta 16 XcmcbhctLT37^|V4X`10i>8%0)Fmwe< diff --git a/clients/unity/simple_sample/Library/metadata/00/00000000000000006100000000000000 b/clients/unity/simple_sample/Library/metadata/00/00000000000000006100000000000000 new file mode 100644 index 0000000000000000000000000000000000000000..13dcc469e55610afbb6ecc8c7cd81ec725b7d140 GIT binary patch literal 4308 zcmeHK+iuf95S>EHrQGj#=o8|plr};G zp}(@Rx=8h%G!g%@R5Xjb{E`X#{y6hV7D8aKun77w?1_WnZde&?*1;wmsuVWoU?&P- zHaBTjr;f@SZ&l0Dax%tso%aP})IPZ*s5`}&z{1$Pqj23(XVb4*lH^As7H}ABHIyMR zA$LzYKz}6+Jq>M>*3(QiUo})#*ZlZo$urRnzDquZa6>ic8tU(0h<<@UF5@~|8O#ghibIvcyg;rN zz}AxG_Ku;D$zsY6BbVKC&7;HaK@1=EJG!Z@m3`JqDpL(*8-l*hvw@#7rf)?4Lqn%LdA?XPMfGz~GjYLmoDiL7s@|kEqs+d%7*|`JwqZ`n^#GQ9 z^%?0wRQU(>aPYVF(AVdN)kZ2e>e|13eX`(W=LgO1@fcrnXs8Gnqw+$_Xi(@kZjZR3 z%%P2J#K4Gw5d$Lz{s#u|g8_TUt!mo%d0*Fg&VRS|@rqHMM!IFgg=zU-7I@(y{G=65 Y{^mujIUEOnn(n6hi+qL2i8%0)Flhxz delta 16 XcmcbhctLT37^|V4X`10i>8%0)Fmwe< diff --git a/clients/unity/simple_sample/Library/metadata/00/00000000000000008000000000000000 b/clients/unity/simple_sample/Library/metadata/00/00000000000000008000000000000000 index b123a24207df90dcc3c397265358c0ce5b01903f..f62855512f78c37d235017e72a8f74f7408ef12b 100644 GIT binary patch delta 16 Xcmcbjctvr77^{(74=qFzE$V delta 16 Xcmcbjctvr77^|V4X`10i>74=qF!Tjh diff --git a/clients/unity/simple_sample/Library/metadata/00/00000000000000009000000000000000 b/clients/unity/simple_sample/Library/metadata/00/00000000000000009000000000000000 index dcd6262e8b4c67ec364d6ce1439fd61a8a4f0f66..fe736b84e179f0a5025f00986ff7d2af43e0ab52 100644 GIT binary patch delta 16 Xcmcbjctvr77^{(74=qFzE$V delta 16 Xcmcbjctvr77^|V4X`10i>74=qF!Tjh diff --git a/clients/unity/simple_sample/Library/metadata/00/0000000000000000a000000000000000 b/clients/unity/simple_sample/Library/metadata/00/0000000000000000a000000000000000 index c7d1d464ea9d0e54b3a43e4630f23976635e9835..21045cfc675818292fe5f191a37a73c80cd2153c 100644 GIT binary patch delta 16 Xcmcbjctvr77^{(74=qFzE$V delta 16 Xcmcbjctvr77^|V4X`10i>74=qF!Tjh diff --git a/clients/unity/simple_sample/Library/metadata/00/0000000000000000b000000000000000 b/clients/unity/simple_sample/Library/metadata/00/0000000000000000b000000000000000 index b258dd471fdfbef60c0df96080247e11d033dd02..fc3ca0b59972c042d4d03f9f0f4e4692bc14947f 100644 GIT binary patch delta 16 XcmaE$_&{-j7^{(7xPwGHC^Q delta 16 XcmaE$_&{-j7^|V4X`10i>7xPwGIRxc diff --git a/clients/unity/simple_sample/Library/metadata/00/0000000000000000c000000000000000 b/clients/unity/simple_sample/Library/metadata/00/0000000000000000c000000000000000 index 131233636f0a87ff69619bcaefa30d178198f824..ef89ded46ede026543172b032c845947b8b903ba 100644 GIT binary patch delta 16 Xcmcbjctvr77^{(74=qFzE$V delta 16 Xcmcbjctvr77^|V4X`10i>74=qF!Tjh diff --git a/clients/unity/simple_sample/Library/metadata/89/89b0f8fea628a544a9855c108fbe35dc b/clients/unity/simple_sample/Library/metadata/89/89b0f8fea628a544a9855c108fbe35dc index 27246cfcd0ddadc7d20076359c6fff870cec6963..42e7c05c4c140786ca342782b437d78da15451d2 100644 GIT binary patch delta 10041 zcmZvCbyQUE6Zh`2bnGsT)B@5VOG(3mAfS|j2uOE#$6mTYU_nA!2?YcR0i{7gQb9s# zLAtwNzW(0x{`EfR%$b=xpJ(owxzBm(&P_IT$6IQ85QusJgzMA`0)Yr`<@s9<61gXI z4`nTqOpgMSe^i?RV}~I4GV+eDwq~jxI__r99 zaA?33*!wtKV9NiYap=KR*hCyDFg5l&j0W3GguqfmDX~ZbJS+*62pd62iRHP~t)O?X zdQehq$}I<=6j%$Y|6$6ZFfaoaK}3NahBAN|u_ItM?C`DaFC`4Scgr8*@`IT_s{H}i zJjV}*(*6Ge{VxcPTNg+o9Y0sAe=%`lH;F~STv!$oHZV69O~nT0`S*@M5=Lw{2^qG8 zgc;0-?YXt`V>d|HuqaYWn1!vGJIK<^)9hci1h9gnd|=dVFJ7=9HklX&7W(I5h?E5^ zjNK)D3>Lvklks8G$!M{`WHi{Xx4e>!8Z35;qQTCPkzvVUv_uvzjxO%nu4WciSOFL# zmIp=zmiz}$gArpRVgIE7igkg}fTjOA&w||t%iN}s1xp40pY0Y0miuQjhSOlta3V1J z|7t8?`F|1?P7PN07wCh3$)i9}Vg>NYz)Cfg2nAfmhTG(9U<3 z`gmK0eH9IAL9T30wF=Fit;+X z;4PyY7y6zw<`~vy5q^I=o_L+U*r^7$KiWIL^1l|~*M7ytXZQfjU*Vi^GK^eo8RW~y zu|^yey*J`?&+L85C0y88thkd!S#%LNJMcTl=!tvw4q_YJpP7@HbG1L)RU%t!k;J74t}JepI&j(2gv@K#un<5+o!!%-HzuxODWo^8x**? z8mxVmQhDE+rJ_3XO^4sd>k-+N=GIwkWP70bC%N^kBYNHl;w?LO+Ldo%yg#SUJa%>r zT!1m`vL z2H)a$p$E_tF7UHv!sv4EvxKjYRP!`vXzhrVy&Nb+9Ktmo^kPUA3OOj6W~=+a|97aq zo}X2}p=B1bXSwoYgsts}zGAv=ZmdthxGZxHFhzWJW0OOFVWv_ZJJZZeESb3pd~A?d z{6HA+p9qppO>MQ|R{28L)brWra4c|lKvt#3PHxk4R+sbwKc$h9p~NY(@g!Yi`_gtZ z$ZU+^koooVxk;7Zf&24V5dpf1R_d18TGQ>TsYJ{x(H9|8*QfxDu*vu06pk`KvXS3) z!|xJ4F=wlTenqYwM}3;vQ@y^ryg$%dd!0fF99`h3zEnOtN$c>yocA32$({OI8V3|v z7cTTR9kpEjZQA^6KjnzYU}=_4-*F6*RtOr$)Ml*cdGJ6Yoew#Q&tR4*(s3l?`;=mS zx?&e$X8sfQkDhk(8CTGgw_R_y=o=WNj6u&f2A>@7Zrwd^&VM0CHjDxaEnd6Oqv_r~qX{Ao7s=d>>Kf2ac&;H1+L;J(A0vFIp;mh(b{FFtcDbM1)K2f5a(gY%P} zua^oOqDIfaY!Sqv5p4`|IA*-8#5)#5JK7DGV;3}eVzM{KBWR+Xoo$oMyv59TRl0Ta z(du*450<|0Gc_A|TtzG+%lBXRX1Fo}{L z3iYqB9@lMQ6#8-+e^hoXC0H?0;ojp(DoFrq9dIeT8sPJ|s#3p*>M#C8+xs0v!+~@f*97-T0-UXu6Ry1Z9!30t3zha4ls0& z_9_zJG`=?c2@1E2lVvQlE8J`zIHJpFzit!RHSNj4b}5b3P3R)UVCs6UtnVZwh0J(U1Nyv<+73Unjk+6n3mJ=$ z1`Z@@lRc>FL*$luXAWTROVLPgak5 zja=Sa;}5@|h|kk6%dfMqsNum=JGJD3qRBp1%!mWhTd)b6e_xqm_QSOWz%l$0vHViGi#lVNGP% zwBOUePTB=K;(co|o}fZp8m+eu?~k&Ip=bp99?H1Nu@x`#S?4MWJJJ;u(9w~ZQbC*` zf5w=ef0j3oV;25WGg#;C8oj??VjwxB!2fHZJISL`9Y~FDqcz~)jCiO=$L7T9v{aHG za408I4Eani<@c+>Kv(e)C_m~<2 zFh2(2L8vZuqFs_Ljs6>jH*_V0;&UDBf!gt&?w^*XLe3;8XRbZ%vyd&Tcj?t;_Gniq z4mcVL#yv_EvF`xFerkakdys}TKHTL5D|RE}GqL*p(^TMvru8428%KlwG6{jMoSQS! zLmmV0sqAQq>aN;5vV2x_0DXeFa7O}%g_OI9C`E?4bhjy|njFq#vWpxFF>C?BO=r68Y*e4j>miY5tmrb}2{rrrt zV}2#;;jy>+#<{`ANfIV6rKWQ#Zty8Xevk)l?325EwP7$d2ohhMRg4Qv{0%%ZS^?N* zT90M^c)qv!D!2-O_6L>V=Ae@U<>UAd)_^N3bC#rHmHW{0Afj@7olQF17A9bFOv-=29e zQxGd5<)=T_;i-#YTYUrpErZ?$+=HTcjR8u5NzeQ4A6r*<&d6C?iTmXl`52Bmj*0p5 zdO2+$HKPk6PF9^>xIGUO6?C_r+)A+Ow8_CGbmFI-e}Ul^~QU z^r|wHfG2;&mF2>kKg##G_fqx;(4C$?I(@kp*?4yT(3tQp0)AE`wCU{{yaxRw6WFIH z4f`84i+^Y`%Djh}b?LmMtiQvKtM!lsJf>by#`D}(e>=%Cw znlL2VW#NLWmSu<_%f7L=f5Jx2WMf%W{_`gbBD~a)j1cjPNM712BpzI$$hfB$8XB4f z5B@ZcND-%Tzj5P$h}=ZU&8o}zFg$~@wvy|?a$Lj4$O_EB5D!d9QM&NG2Xg4k#94{Q zeYiTa+ItkPd;%d}?Q8&3S#;k-O@$^%@?8JJ4u@Zf;g4@f*F)H~?bZ3yU5H#*k1jNv zSet@T{^N__(3R=sCD0O-ohu}qtfev7Lho)clcHYyaJdh2n^=wWi)G9SllQ>4vXYqm z6WbmVqVr+M@-k($?^%?X`WQ2$k9~54_Kfz5eHBOh*9rOur8U6Z{FuJJg4@lLTC|LR`r7^?r~7wR>z)xKTdB_v}Wdl5X+t!2;i{K04` zUslyxAMP5W*C3P(eH~>(B?U-Fh`-NxPfz!LDb0a>FFP$~hC!!*6D?5MVS^@^*j!!f zC=V1apMGJeT1V1Q8GKW}ipx+q8*%C$H?!93sK;|HHFXXz z7SahMi2ac%vutr_)>lx)-9gkKv3!G+r| zOGp52U^O7V8w|o%mJB&ts~O;XZ}Nr49+F_LN^CHrQAeme5hIx1$7Wpy-!mLlg4nGe)CLsU-xtDls?alJ0)wD5Y z1s=^zD&Y-6?U}=I7mi;RbTxnB%tjNPKG*=c!Wny6IOp14BAKCR)0U%ZCHDkl^^(1s zZ4j$`IYg|DWC+)slVWp<=2~3>q|Bhy7R?F*dRIy<-;dbqhWM5VVvi^abfKx?N7$LN zP?hDFH*+*#$1-#mh3$z$Z^kNpm888^m`zOZ_)FvkhBv(rrYskOY>Y%GTrdT7uLa_E zY5gYWlR%Seb~!Ofl{^{mpLl(s)P|3owgxeRULt#YgwN4&!Leqc2sv@t`%X(zcS8Xl z&ISY8J{h&$$(>b`oe0cm6yRTNpX<%Ce70>^gSG4Tpd9oor#UGdXRilO z&Kl@&kD07Kn5NxqW*m#R3ygkJn>(eWO6?N4gKEw-CyzORq@z|qWN2&IQ%Y9Q9*AxZQvdz(qO=7%w=q_xn3%g_PaiD9@ty1 z&ffGyTRaV;?+TTVnLc+N6`7bQk11z>25tR-Rne$6N+t=B1rsC_e7acW76*borWUgp zM3CB~is^DW{dntre>?>jru_xFO;I5HHk_wRNqbYdE+ zYf(1xquP#=QrXUT2sYTp>Z{vOvG_JYV@~LbCxkUPkux!n>29Ps3g~_AcT@Rg2VDHy z%h;IBi_G-z-YMTmC`}4nVsYMbl5cWqHtU&m4N1)*IPeO`%E@T z>i!aiQ|2s!1Xkeo;j6TGk80ui4@RWfYzS6&xBLA-L}75JN5+pG;eq_#dv?{T>BQL_8rOG&N5Z+8WU{fnSlsESq&|9}RS;-HeE zY^w>yBU93E03SjVf@I-Zl=xbfEK48#c{^u-80^{Hh@-(oYHA)u0FEnEYqy${<;yF8 z-mCo3@hf0nETP!(lY4sK7WH>kXDyA30!=g%HMP+8^yY4111C(;yNG`ANY|Cg>Dtx6pU#S1K--O znN6}fhFx;Ra`5vChcwE_L!j0B`hG70Ffz(P;hBwa<%ohM@vb{<0Sfz%X^7L`lh+hq z1=(mvYlWkFUnJy1WrGP;J;(_*vn>RrvwH%VIw!yY{-{m&wA)eOimL`&C?CR8P6FlS z8V4+lS_u0R<;BwHubs#T_ZquQluv(Nj;%h8TveST6B>(0=#jIP%Tj?Qdt|J9>xuUs zMzb=@OD=laE3#%tAu8`&t@Ap3(m1G9CnOmk6UuckUN0C!?ERowUv;{>zeZ9h5ZvYZ zq#&rw>HW*|Mmy6RBd@m?qg@!819qea0SI6STjSF+?zhvoqc{h5IPex9T<6sCu?N>K z#j8oqtpB9=NQA-YW}0X^cQpEiBJ+e_B17ZIaxNG<#joxgry=A?t9*)~f2Cp=(T)CM zjXzDtgb(q_+l+F~yS*x2NVx~q)NybF$KEK$X<2n>O>vmE9Ei<`pvZ4>IeM>z7BGFE zPw;0TOA?uJ?l&$|nR{ht@~eIaf22AtwJ+2TGLH= zB5%vLC38PXT2XL*j(dFN%Vp6$Jph`e_0R9f-oXc#xUSLad(G*H;iSqavXI7jkQ?mc zo~0A%bvomzSw>Gz>D6OoaJwG9$>Zf0CY{x`dJh)cB!Wm!WSj zTe3-F(IA|_PCV^<<>1=gnE)g-Oe-$1`D*+QLUF@!mBCr4S6iYm(y=6eNQjoC=@@?|?k0HyHO7fYV6N>2z2GIU8HfH=n~)yx{?RK6+N$f{Vz0FCjdYd{ z$s^w6a;9&^n)romOuQr);vi0Y>_s@k#F^or3U`LGHJy_WMD+vX4pG)RhrNF@$wey5 zZ~TtdjVOD_#~D%csT*W>_a~Lg7|qfg<|C5&6YjNXQaP|ll)ra2iwn6iVOd&@^oST; z|Jgspvh>mQQ=FM7G-(d(NvP2Hna{57n^GP1%WUt&KLhH+cm^izj*C}UF=uO|Mjj6D zvLhlq)`UWyd{JxxBAp+zV7Su#;EmsM8zq&WuU5r-4VO(|YUj)+CHe*4^Xe&rntYu2 zZvMOUF`6yE;bT=uDI*`w3Bf%o~@j9Vwhv@KU{Ui5~3st&EJ|pjl&%R;Y z&EDCbT5~e5ZEe#kPtUw>zx)z;t=0~5F`}zYiSv&4PzxO}=>Np1of6#lU7mWpxlh2s zZ1-LZ{)49cF0W4&=Hk25B~`g?GKlC?shxzoq-{?MWpmtlxvM39HD2;N8Yu9L|CahS zmkR0yrxL`zF%dv^^a>9h9qzHT6RN<4Wg@b7Jkbc#Hn-kuRp=6)Zzu5}Se!oNb#EpM zSXjI)F)%QsjmwI*92@hB|=0v|5$FQf44Q^JTjk42!**(W~O_ zxd)M7`N&Hb=1l0-MX0uyK(0uH&-K`l&pKF%FU6+oy z{`@MZPOvGoer3H6e97m$M=e+Pi@D^E? z8=q+~DbzgF&oH#iiz(_M(T3MoPwGBf_k2M zMnp0 zZHgM4nk?LuKU9sltc(r52 zGxI$inETp%Wa=o28CxB*ZRDqInkp+`Wpkb)^+ABMMa^5O9kh10=rxg<5&zg{J7s;B z{_0=$osU|5P3xY{_&fF5=>{4yn*9X&{kZ913pDMLy@@YG&YP~ln@sY7>9iC!lY~z8 zHu7a5>MJV?c|K?jt>q|u+p9yaF94w+dC^mny!ay`vRpM3x`)Fs^f^4vqvW1!lHaSf z&&#i{^zdP!!R z3R278yBx)wg?^(=8cR~cw7eigVPyrCDwXiEaB@D1KiBBb2DahqX%6aq9Jq^N92|z{ zuBAwJF#OC=_3rPg0*AzM#td_v>hlY4=nrcfic>i4jt zt+bMB#&GCH`^qeKHfI{?2*%x+kN&i}+csWvlV&tb9DON*E6?+zXyhus>T^02O#q)M z&kxvk<7bHpR+(5{Sc2SvO1a*blK8QLEBKShq$!l!m?s3PIs>6?#{UY?54s->lEC`z z9NeC>)?};H2u*dHKdCd9a6ua4(qT&=!}ebtKb)9uE-nHZ>q3TKFtxY^sDIX0_|fvt zc73&EJ2@8QH2>7U%;FJqPxh-1FUA|h>n$aL`t}$~oN3wa3FS*?ds65N1*n!6J3{fr zq#VexmSDOc`3H0$wEq(b5QDO~Wj4hIFV?N()FY^wND=Ga8T{{FE1%Z$gouiN<#NCB zj|C~oUN{>jEHEnSH3T@b)<+_>6WwwD>fd+geH(l9EAib6dKJ0gxZTt`(3nPhuF+#r z(f|URb5idL%%2ihAqMm3+Ye^PjD33i-utTVXqRz1%Cwz(k{Ou-PB4#ApShTZrnywJ zl|+u@cP#U7-RYvew$(mLBR8(SC6{!(Z&K zzg#3Ee_Ujzt+{sE0$oqfp>p1j?)R5M$uIr8AF0q4$I;0?4@m&pwy#&S)q_w z<|E(y>mEC(4(PK3(;{=wf^AV+_bX@yA5oo^9~}JhUez0if=j|bI`Y!@Ii|XUiUl8b zl`oqKoy$Pxtu^n0KEH0%iN!uq!-=0f=CAsZ`euzHQ0gh`1U|-OZcO$Wtm|=AxzBgj z*^4&6tCXc$jr{1mXDeQ8Q>h@&u_PPE~^er#g_M6nozFw>{MCME-|4Sk<|!$>o9tG(r!y!Ly!JJL^?5-sRl)Gq7}LDJ zqy$-8BG*n8Fh_f_;LcpQ4`GnqUEG@SJCAkGm7}O{ zr<-Urw@J52h?TJvwfQSvfHO6`HV>L(UHrhI0uUbj$nl3DSfV{zbLneRjy$5g75=0M zR^GUN-P}YQCU>UqHJdi-^`wX(jFkHI3jGXD_A<)k+wBD5CH-6Rpv|J=`U5dui2oPw z!*j~jdW-98qq2s#%Mm+l!a*pH3~~;wx0D$>ftEYT_XJiR5@ie)b_aeBX3`*p9~qa2 z0-%?Ip|ZRgQ1YIH(Yjhy!Y}C?mT+z7Xt&|30vaVSO9vj-jNr-Y{j9Mj-#f%d@59{6 zm=xBn3ki^}7Rocz$?vL}p0XT>s9rv}*D*}q(5Bxe0n9k2a1g#EN^KTmpql<0ku zdx261%l3q}uI-sdIC1b@+VVnC|6!e*!%J4YP@ zJl*+t=%cMu3l_+KqSbbF(3r&XB)iYXtjM16yU zBWzaI3G>b-@k@;R167Cxnbl9=V|Gr^Dz`F<8E%*B14UVR?Z1zmVc;P}#29N5mQGFrml0unK%SCwo^PA&@Ym38PS#TrYy1i>yvU+~Ak~*K_TB5K}4R2fj=laYydS zw>t;4Qm`{Mzq7J`ZgH|mQHgW#d}j@k3XCL6^wrqpqL~-PT$jrZ@o+8%9m`!hb-(Jl zD5?B5DYuTN{~H*+{q^v;E2}!epC*%8rf;%&_}pUig@9vlGT_w$PG zE>ytrdlc*>#I^saRgm0PP;Ik@iDO3&vVfmA0V^WM}v@sf8Epl&g z=+w_m@s!ccq@AH@9)Hj%j)LAaS)i!#12fYDHWPhmkKap_aYu$WoJUO=>&Itb-DM^& zI49*k66RQMPu%P|G~8)hl>L~RTMcbq)X6#~mJm&W~iRoPlBzcs2j?H z@f}>fKrZI`4%S}wAfy)p7R&{K5$23Q4y!^SfhE86rWgcZTv$IMA)%FDi3nzjLJUJxM+jw=8bebI&#riOU00%l;2F#o==y z6F0vc)-mG$wUBmJ5bew94Z(iAh`3I&4I3jBgguh7gt0(Au|U8thVWvDFNW000zq!m z1rT1`O`G?aK_FU?lB|@DANVNy%yW6n`<5=WSW2o;QcEE=xth;&T4=Y!<-^>h?|F`r z$dp&<-1EmL)ce<7rB5|Ss=VV~wVNv?l~n7$N;J|Ecsa`K|D4~_<{8vNYWms{P|t+u(~_goyngyS<@?EGwh?5UhW90FQ)!f7x4^2)spP+g1e z!g4ay0;6+txdfHnkOCKk-H@r7G+mBWZjOGN$4t?uen5=YmvyEe*1tC8T2UD?^Q*W| z&?z1v*yW*gq#s5HpDP!rGY>6%2dBE|DT&n&IhtUoZ|&stKQc0y7o;9WUI931C(geb zr(EL}@9Z|1>`RDVt~uG(^*o1l&uQQ`2lpd#*p8ier-E&^PEaCI&+}tUMQfYd&H7ML zrS)dl%oLQW<=E^_*QV4X?*!maw=y?nd6*t2YuUIf{jl@B&igYm#DwQ(I}_YFkJ}1= zw!Tj6-Q62ZqO+W@1xRDg6FB+B2CpheMbLgzVwidWKq+({>?bDci9pGz4s9& zIi}MOnWo(EwdH_Bcu_K!_kg}Dr#}CwJyX!_)30w(qnfk&Qs zz|TBVz2at@HP-#E9T1`_pJ5jBeHTjVDsUCh>T8rWRcY)w${-O{Y@EPRG^w$fW_qKt z(uBjXTwCH`1tnAXdQ{AEQ?1lF*Q8XtpBL;;pV1^VQ$x_eWCv~VwR_!-HNo(vaYvS= zH?V>@7wVm})WV?gP21ZN%B;m!*9VjxOmdE4XOW`41zaocfx__A1C3hOTr%6Wg!cza zY!%v55kNNw#;9S#om9|y#3w_&?wuWpIx`rJXp-;(|DDjX_vq%5!LnJ$*;^6{3beQ` zp9!b4fR^AnZ{N;dOfj=yFHf1ZgsxvH4rzhDb%S-xB*d4s+lB41D%~e;orgHRi}Emf z|GL)B7Jgs~h%+yfzmZF4N!3C4(Cq_P`q8Ig2vwP0iMfRi5sKlAEam}9SmuzDWK7Y+Tr2Xz({#!53i^3ukf6Kb%=z%0H zcR|Sc^kMDt@)61=UtPPrt6G`aXpvOKFR#e3`uEkz0JE7J|7uTWTKAN#A9Z_`7ek)h zR%WlzsvqzGC6W4ZrZS#fe%XozvwRxLC~J-9yqJq4G57K^zg^xlJLC^_QYgzMW%MCyzVY{2Wl zG`&F*_|nz9!^9z1G@4yX5ie7&!8!O*DVXxS$tANQ;@&?du5eQt!gNkC%4d9%L_Sz> z38yG7Gp9~pAb*;b_xdNZ(lvFLo$`JQe(Wov#Jz6-r!a`dW~b*|XPo{~*ZZ#u5Gf(;m|}>-eQk+IOyMN`Q!wGc+b(E< z3P;Abg(UYi?W=&d+0Ip%ZEWfdHsr~`yC%(WfTzFYz*uMMbJ3PhA z3Yq`!d_w6RWj?Fo3D%&JV8UmEkuN)XP}W{Q_PawE*@HBi;&-lSM%?e=zMco^uD+cl zy(P_^oBT^uPwlmHoh=-#i41lviv~HyfSZbM_v+tI{Qh|JuTRJgE_icQl!Jo2>e$}n z1lj8+E&M}8nRSYwcQZBj+eJptCzxOA`fXCRxa8>F;90s~qRZz*bM7Fp7(+t*qahKm z4~07}Xlk&j>d=#)(g4eWQBvEB`htQ|`RSooT+bRl!{aPTM@MGZ?RH0_%xl#28)))M zi9!3owoj{M0rGb@94Jer&GhHjiVLH~Fd4;V2==w} zMEKAjtQ=O}w}U9U;nS6n{v)*;;FMVsVWbRyHJ|SukLuZM6g#q@bsrlC=&ayB*>`(R z#DJDuhR7Zk)U+ZHxs7K{Y$$n=#Z-zZ^Hv#SowObQEP z%vwX;Wo3>pA17@CV{+eqBTZHv+$-_CQ8Ho>H;m?sv%lvB*GWZ>_vKT`>>@)Po?ysUM)RGtlzE)_vdSG*^bf{%z;_DjsA;b(SNq8! z5#QGRzAi1q76DVZ9M4BC)2@y^vH-@6QngXC(KA6MACuNxBQyT2Pr{LxD_DJho356> zYqSQt-z+Nl@^N9oxFhlATb*zSl9;r}KPBbT^a%nRg-yfdTp@o6B!#heB}N3~t-EbS zJna(n(!Be8CvFT4fU|O{oB;5*rrPO|t(qzRy|vCxHO|G~Y|#y~&cePuy;FhewM!Du zS|_P7`V5+%#T3f1a8t1R)cA-Gu}>v`f%ZkN;%K@P;)JGJzU(Z&P0L$u@4;M+750=O z<|FFA?(l9!rZ||gC6D;JIRL7uVPNA`kDZBCMP@m@Fke|(0N4?ezG?OzkNwt_rF+jK zpd%>Y6k2nb$=!gHVa?f7ErIrtHE737ifjQtXZVq+p|VjZ_YfJ;>o$xfvR8d`@)a%F z^E21ZvlO@a%R8?yw9AoP)y}MCfH&ovA_!_>{w?Tf3~vaH4hu3eZtd)F_zbgfYuMi` zdpbtN6orV30GBF+2C3<)cGuT8ZpcL*mG=X_SE=ff$wk6fy(3pg@)m6_0C ztQQ6P?%Z&*Id59^b~0mj{Oiu|YCfltMIUl+fJlJc7H~fP=1w6>7XJRx^nxe+m$MOn zrsW!DZ+NEpgD@Jpds!21R*P14Bc;D{oR(2$&V**n;Z>q24_eO3ddpyFAD?)0dL+*) zHs+SuoHf)f)!>NoW0MnsrDa^2e^o6hS3U4OMG@o%v!hk_H`L;Uq0&}VsS%mwA>4z_ z%>cX}25@=B`h*t^gnFf{j1B~xPkR@%Oc1PQ zi1n2z(UT+_=|%4!4eb@V&4;NXKvK)|@ra46BIUP!85{4!v?<7r%LY+rMgca-n z+fosZN{m8jpQ6l^`X?r8s zJ&FmvCnnmk!saFr6OKWAc_-)~LX1W?p9hi78nwjXd9A=D0|*>0I0pIs=+pnXPlIz- z%6?V8niJb;=4gJh7>_Yqc$V_>pN1{Ks+cV?-f$~2wH2n~0@uH!+dMrr6gc)m$VadC zJ})dM9+P;coFmQQmzXAo+CX zcBGXx^xVWjPh%?d?N$dD;kFHo8{TxNL{rkUV_;9tp9kAl+aDBD6+>VowVKBf#gCx; z9wG*(auBDm zflB2I-#C3Oage-hi=U6sG2gn{ZL9*B)P!i#@}UqBt2@JjeD|}3|xM*5zGG%zgKaUC#Pp3Sl4SVf@*D?HbC{bA>>lW$!wmV0Js?haa(#H#0-qSlv0 zo0}Zi=?96kqgD8Eaj7{h(_(H*$0O>*~-UnMjA(Dp7V&|1E#fN}lV?yVd8 zz`<6k>-v6;gvimB%6cE+Te}Y=?QHf|Y-AB9v9JlFQPxw<=|a{Aj!*nu5;)@=O;zP$ z;TYZB#&_BIO_AF!&C3+43b-`(IjYD~K^(>hhqT{cV~^>{(gBwjE=dSKI%5hECb=Up z8u6GY=eKNoANJ?|jKsGxm>GUrzm`B?FjyE2vHZN^y&AM>Gr0Oa4U@+-hd4k&ZH$Jj zA*tj%CBD+&Mk+JvCb;=W!Dg7k>IsJ`;;4cG?6aZ`mL__Jw)x{M6%kr|GQfx4hZpMq zq##oeoV(_6Fb7QebZ(EZ6n_HOODQF`8s2mr|8Ci^K}NxX0{A#0z59N-6iAsRNxfB% z>%lezYiqyuB?3+64O2juxJtyyHfc-2X!y~3=-&%Z19{(26e3HmvYkQFs1HU?H7;=p zBoi3Q54s)*`c%9RJbMd1Q*+SXu5?hCmEP{tij6@-v4QQsS$(=z^i@??i?$SrxcUi&c%e2NJ=x$L46t(hcn3`w+G>tVavasb!NY!fvZr81W!4Kb^*c6ZW;d;rmCdn3tDz`hU$Qt zNN*h#*~Gw(xwg4rG<5s*Y#Z= z2MXw59fI7Nmf;Ix9JW{n9W~6ht{Yv|6kk&?0LeO{VFXDp_Z3fFebAOa#mPPVc~G23 zRBY5rp<34lt}-GhDe)Qnc9cTFGIkHUkb-O(gv{*+ zkes?w9S}mK5{%;->UuxrJw1%mUL1CfXH_B`LaQ`!^gMP>AnI zb>a^B=hMYqlXw4*HfCYn=t9_7WZVz}Aorx^wb~1O(bEl7%!x1V99~OQY6G2x89Sq0 zn3xo}GJ%EBHJH#PSQ~#Y-Xot12Nr}H=s0y1BB?@(^o;%NJoiHQIPK>jm1gN*Oir!lCIB=f*4Q zP#4R!B3B~8K^hbD+H!s}5kUqiy_3>kIBa&je z+NjMf42sUYA%|0K>At)36{G(Y*#BtpCbh!2v1_8aoPbm!K1oRF%1Q0(%%;8lUuD~F z+_eh$FEhm2H7hYgZgW8%sUL?EDaJyKhwOKv_V4gQmoy!OW z2YUrf$S!((%y5PllI8cvr)V-ZeAz}#)pf(`Dm`-|lIp>!^L4=7J|*Ek>0y)BN!q=> zW~>bBTH*^C$CkGprS{+vq8{-QY3Y|FsREI|F~>6nC#m?cI(-Y5wQ5x3eQ!RX1i5WX zo6j30UPWWySsPgEB}jA!EbiAHig8~@9nYSUkV_$~1?eNPGJnba_Dmu_+VkA{sPWLa z>X&(qYps5L@ssP6NN5qXe-cFUS)|I9+iLi?ZVUs4tkwq?OJgz(E$tByqoltk^|KKo zJwYDyDkj~|yj?oY9YLv_)+vT%ujW^2;ZgH`|LVSUt`Xa!#U%NrXc(S))=fKTZ+p7=cI$@@t5Ou`>P+jtx}C z(a=xo4b1I1z}tKSP|cGbw<|zeVy!5S%Z$+& z-N_K!hdr(JE5lczb$mAJyJN)ROc_u)%_yDFD(7ZFu=J%Z!D7tqz1yW#CWe&`N!EFN zK^On`Qc+_Zr(8Zi0x!21PVGOFl+qmp=KM1=^Exzn_y|obz)5K~HeCMcadkCZKpgWI zamvPb?PO4-gk-n+8xr=hQ$XGJb2QGPu*$U#WR+r zD-5gjDRFcHlEN3+cNZL8Dj!H}{w;@PV$LK@RzU^usWT8+G$kl;CvFW{3qrAgEfBG+ zDytEiK>Y{IT;x@=CBSy_$6<{W@F&y#CvVSQ-B6@ej=hCm%Fpoq?`T*#9!RPOehHp8 z8p1Mji&?0)_-ahaVF{aggbp(KwP*6x{;q>awmfCPX`~)Q(6~NLy%z=KTPt7^aO*ab z(6hx}w*26_yT7C>ExOre zzn*DBV|5^RL+XO`~ zq|6rZgoG51;G~~57qO&+2q}~w_!)ffbVH^1b`wV^m0fqH=?R>uGi;3BF?n>3%z?{k zq~&6^x86B36L%S>QRw`Bo8M!o`^ApX1)ZW$Nj1vEE7x686>)n&>)+SIq&0`-8Rl1? zz?yk`Lg?nrLh=Vx)JUq4MTBGpkn?}3b#>o?*FJNPZt44ss;)~asFG$541V~7DDOTq zwit0F*w}z1@fqF8%vW-F@|j8PI=u$S#0gRCyK2t!%l%(T+S8}DI|+V!11Vlw51&hm zt(a-dP9qkzau5@_`&2Ein;)E}QA01O<%a!)gaQ(&i7WjenSQI~2U_J9rK0;GiNL=F zBnxyusX-fPRdgzrW-w-H#xLA?V)m3&eM|-7zhfL~<%0GLIwhI3bWqqgt{kt+8!`TR zz4xiY+DhvCqux1wVjg^-AB7!c>UX~?(z#OQJSU&=-TSsEikDcYIl=$1NQSm7|Ep`1 zW?h~072G(R#-484hX@uw&pqz4peY3b5Kn3Sh&0Tmw<8ZJHOF4%5Byw0KKiMF)~HXM z(sF(ebc=LbtVB&W(oQOu6vFD4|Mg`cBx1Zfn0x2+e)h1vXCGb1$27gaRs)m|`EuLC z+vC?W64{8uy?jJ~!}y|@SB0){pul|@*I*)iC3ZSHjPG~qmzzlpJd0bC(k}`?;%l6+ zU(f_Z_%jz`T)xpTI;?NI2&HOqsLgS>O*m^b5=vUE!14>5jeqWR%OKLH!!d=rtQqBb zt66nrvMAK4yMf{MPt}l7%fT5xwmIe9z{pIjJ;Civ#NpzB`m5-X$!!netc}5qk2=hh zeJDNjhZo&A2yZX6;SD_U%)ID;c4uGHIGtPq1A%JK@yf$x#$J046|P9Aop)>YM$#A`_3_$YOF4&mLL10CZ9nFA;Hs{dYp3hnNxGu7r&m6y%7&Y@5)V zf>K}4bDCs5FdU0gAkNKI2Z@0h*q#XW5J{x-NMie_(mGLU5_1eO=myxcsrY*+H-ef6 zenwe_;v*Ap8KZz5 z=!~!zGy6GmSF{gDWlfz(ne9G>9OlKx&%x-1E6DZi-~q%;`K>Gp&{hZYA;ko)>h6bk zSU?P8Og7QOxeA%n6m~K(qhz5LyOtE}5)yX~3i-1F4Y}OHGXc_WOGC>Y<`}Nd3PRT& zo%Poy;n%&H;k#^fHj@33LiO|;BL`NN1#-dq$xfYZGQy;8tokx=km1RDX>Q0R2 zqDUXSLQnc$bqP>;`K)ZrL@jP&3i+vlBy_!JeFaQ#98UuEvzz6}JLHZ& zR8;(eAw@@0Z~j%+bTZ`@LMF#<#x}G2PowX~uqyX{YtX-%zY6@bi@FaTZO>QEZ?8!z z5_l#F)+hn9AK4V!w}Uj&ju|XEp5+?p{9LC#CDS*9NO`~*>Om7Tos<`SEYd*TlwBy~ zj*0k|7u?8G4Rbf(ec-O2OvVu6was+*)Y0_VRqB!Eeh9ECo+$@CeWoB5zXud`@Txo>zT74=?Y!alL;j)IXVdjn zDVK+qPo^%DcA8sptFK-$NpsyE5C;<}WGuFL9SopPTTU$UXscVY*X-{$F1~K!<~P?P zde~+EaWa%S_aV?j`b}vo2f}nP2z5ZD_2t$j!ICv?fkx%NUtzpX^Va?{Qv9g=B{Lp> zOATPx=oE+dC_Klv>nT`I(@e+D7se0sjS$GuYh|&lG4iYpu?|j1Oo2j6>!~qCwZ@wV z3!bBe=%aTrGRnfRG-P_tQkh05>A#H?l6w>xe(Xpp8~vAj>)e$MKSAGYiTL`hcy4V5)@SNZ793H`W&Y)tPP@0l@%;mNUuo z>ssPVz5{J*2~KXU#e_p84FlEcbC$HWrn&u>-w3W^qiQ#&a(QO#(WAQ_1#Ya{Ml${O zssO%ah9Pqv%F~Us_BYy=EbY{Xbb4meR`1#k{)nuf-9{w@{un?~XQMr3kGRJ(JpptN zoEqYmsOHz6I3kourDEBw|s#vMdjCQiX9SEo*1d)y@wM^k2X4 z-Y0u)gC*&}jTMH<{|>Y&Gk*rk9sb^`}x%l@nY?&<#vtRXP}HO5Hc$7#cTqsK_DntUM-zR9Lj7bhV`X ze(9ie!|4rQvaK{yFZmap_ePc)o0{o|HYc>krC&G;0iVTj4TIao9zbv4LN1 zwN9W@iqHuL9f;Y&pK`#GS)bb&Jnp&BI`7<`p_CT**`0Cf)PcvaQGe=pDzIHOHJ^+h z6q?xjP2p8hO%C>j=_0o3YMF)xlO6ptfkxtjxwq?>bf7TYoz3?1T_~H-0*2`O`u4T# z4YM_q%Ma-RH{_k)77ygbgL#e_u!KVSVY{l1DTE#Cjz%kfj-YNOf7br)=xj%{waRb(?xwvpzg zq@ePDwFK$jaM{9KV`CR&;Q-%Hs1Fb#;~c%t!~T%C9n*^vdo2t75A)=|cN zyYBP)&(58 zl{Kf8m!2UcYyYQT32U6`na1y0hd8jHoH`xjGcqOR2`va@?Sc%_gxdHx*!W6$dfIr& MT6$UjuPWyM04C)`KL7v# diff --git a/clients/unity/simple_sample/Library/metadata/9f/9fd804cbd377fd445805d7e5eea47877 b/clients/unity/simple_sample/Library/metadata/9f/9fd804cbd377fd445805d7e5eea47877 index 99a3a6de7450c50fadf7b65a6686d3cd5326a14c..08071cfbd077d98590c8e10d61604018a30c4354 100644 GIT binary patch delta 16 XcmccXf7gG47^{(FmYw3=A`(ig=MCeZ%!8d#tHzo-xUD> delta 69 zcmaE8cGFCnfkALH1B0|H0|NsmkbMD2GnnWZ>Y1h)Zj_!a$a$B8fuR^ERyFfrwqZO#_`#tHx#6A|G6 diff --git a/clients/unity/simple_sample/Library/metadata/d4/d420514133a0fbd4990025b3e1dac764 b/clients/unity/simple_sample/Library/metadata/d4/d420514133a0fbd4990025b3e1dac764 index da99172e282a891eb0776a05d556aecf41319cd6..ad05c2509ff2dafdcfef0c53b02ef9b7ffdb6b92 100644 GIT binary patch delta 1551 zcmZuxYfuwc6uvi`5XfUUAt6a62uM}HD6c4>0s&v8MWhxA{s2iMuL>9f7OiL&L;)Wl zUad}t5yq)wRR&G56+t8tgAWkYPJNUzKvA$hh;g)Np+j#1PWz)fvva<)=eyrM=iA-; z$6n&ne!>+1Nf!VnM*x5m#sfG4<$}Nk{^`nUSAXbii0OlfC&- zT9=lq*$N;g^K2{dWy4TqLjYvu7J!`fiCG&8G656kd^E@qq16l_B<)DYkVDFjKIF)t z0JSh?Lm|$65K}BhGYKgap+$r@6i=}USLlK&i6u~i?od+H$`K+7Q;a+u9T1PnLA#v9 z$QS2n%o!+&$wvoq)H6j$<1)pmXHrm(gd7p-ValN!x(&Th53UW1DP+ZQC2Kx(H^dCV z#zb~0^Mn5z)HcK%EaAb4->OZs&omc3=PIE$^5l6zAEa{eg1+`Wig<3QgGZv1Ja?!- z*Kl<{ddBlY{(Lc|$yDpW26chj?v@`4;47d%UNsK}plYr^474kB^F3h@dddF;D$!C> zfsT+eM3Yiv#_=pEfx(z1MSUcRoGBScvnhL%?lY}glZN~#H{?rk;9@%=hT@{#l+6Mr z+C)j=QoH!K)FK#$ZS+Jgf~gwj!3cXTMIc2g0SBt4Gfx<4M@S%nQT9QX+07FP#mJ9M z!WE5TVHC@)37a!YOx^TFUm(Mug5V4Qa{OG5wn!d9fYwQuKu2^%B0}|2C(H$n=cP_( z^bQ!A!quGs5No2BN5*e~FMeAcJERhrtqz{K0o-pC!yR`N!!t9x=@4*NPB`tNZXF1D z`qS(ZL!adcKP$MRB_(0v^yCjkhVj8ag^#TkjZfl76u9gtlQ-j{3cmF68} zC_H?64=3eex7nFtlO82IAIz)APyDim&PBg&pz)5OAu2y@wb8Z*FRp%b?^y^+@`m5P*9b03oV`VkUW4&GZjyna(5ISjysJDh-9>!il~G*0Y$~nMe9BT5@4eYJal_W~JKysq zkHx95GplV+(9pjvYw3ihLo2#Y(Q~x1n}c8W;T_Kv2mW~VA?7wlx9s=B?{wObK8hx? zO&#^Gcvv{2{Jv=w7Ou-GTP!hUxTM0`ga*{}A2YOcY*DN%2Xk|BW~E~hkK?yl594T- zvNSq$-_&q%eXJID!2T$peIR6E@s%5Tt{d*YUC$UCY@}Z@Fbp+veIJyQ#9>7SGMMG^ da{S{tngEE?rG1r^Rv4L|pH{FOpGLN$`yaAMCK><$ delta 1402 zcmb`He@qi+7{}kYckKaQ?+*GKD%dc!Is_3IC<-kgn+gaC)5XD{#)5S~`B4PMLW=|A zz=`hJ#+Gb=nTvplKZcubR;UEGB?dQ=WlkrfXq>p=FBmuirMp&Rw(Or}*(G=H_ult= zpZ9s5H_zGMBJMO3K?unU5$ZpJ5c1`4s8-c{c}AVi_b!rI1A^ zZ~&MHEtc>E75^2*rkIM2B^4%fiI*(p8Sz*KEb!&UKWbA&`pQpW$=)az$m>CF9$arhM$EnaVQRhO#Zn7EMg5*h^5daR^bS55IUL? zrJBo&4Hh^r4uRnX3LNQ0L@^q?3SMM3;V3xFgyCp@Rspvd1q?Dukg{@^W0Y)Vg`v=x zZr)+^<{S%I>=GR3b+)j6c(qrVxdnI)uT<~@E5q@;l7O3i4zJ~FqkweI53hUbOYp89 z;50b#iBiBd-l6lp6-y{^b1c?-6HfBhDA`-1UH%MC@u;5t{t-giY5uV85sz=%7t4{7 zKRp`0V9|ngaPRJXO4`>t;pq0KoDy7dctAL+M%bETVA%Sy4iaxs<-@P80q1JPa zqgXT2k2UpXd%3fAQ9GVNFC>WGHkxZ*d%kn9;ke@WSTbsO!<&zO-ZIq}R$Dc*yJl|g z?AkCC>iZyTI-kPzN%F4FBE0{QT9vUrr=bw_Ras85#p@5&+64!~3WAjfhg_Xa#Kxw*lk=*rqqbEYH|_4Bk*(eL zuFia4$A-L*r~G_gp?#Y2J}J|6*$C^##+Zl|+VOZsOO!hH879`&?apwI%wC>dciR>9 z(V*=Cov*u&+T9oMD3^NaRejdX88P(^j>{k5sGM&HDq~&`pC8Y$U+YzIZJ6E{WFty- zaScNg+cLB3)F&^s5UF&T;{cB9*i1z&T1zOoSVTE(r9L0u`mCdKF3y_Y8ba+?-mvvf z-rse9w%yfRpsN$I~6l9N~$KGID_5ReN$IFd@V!YA8g+4UrS6ImU3>E|r8J)z`!G6`l*+8b_p8?r>*@)^caPxhT8HfYfbXm zmmhWoGg^JAL)zT<-nPsii`1DS=RZ-Swg8e!djk3j|DE$+G1mWy^Y1X^YA3tr>$;=v wJ1Ec73mew2%1Ak$l)uN*E`PmLd>b94gFSE$Iaf delta 16 Xcmdm^xJPk<7^|V4X`10i>4gFSE%XHr diff --git a/clients/unity/simple_sample/Library/metadata/fc/fcc33854b846d0e4aa14f8afb74e173b b/clients/unity/simple_sample/Library/metadata/fc/fcc33854b846d0e4aa14f8afb74e173b index df99f8b56b6a6248ad55fc6fd9d04043d3199df5..2e1251edd9771d5e9a921bc57fccbe5110069b67 100644 GIT binary patch delta 18 acmdlspK;rK#tCAqMtTNmCL5(^`vU+!P6jvt delta 18 acmdlspK;rK#tCAqhI*!Hh8v}4`vU+!Sq3=( diff --git a/clients/unity/simple_sample/Library/metadata/ff/ff990239cc3bc4a45a362f932463d378 b/clients/unity/simple_sample/Library/metadata/ff/ff990239cc3bc4a45a362f932463d378 index 2a13f55f7b8e51af3368968f2da93192cfc84536..d5d8101523d84c56e6bd929055c6a1257f65a73c 100644 GIT binary patch delta 540 zcmcbi@kU3QfkE&S1A|xu0|Nsm1A~wNkY+H^Gtx6iGnpu@%g8l3fzxDTtt6XtZejsL zZoErsT4HHVNl0o%Noi4PF~ff#(3*UnNtsU@sF4wd8zwP}G3reI$S7=5keFG-kdj!E z2v(~LG9L)QDjOIWn1Jl!lA_GKbcVFdqT&*;B0Z3SjQW$~fusS@5Jg5qkWm@|0VPE? zP^;}2ic^#G^HLZ%fF>9LF$h5IpX|se$!I*8kwu-+1f+5DG&UVZHi%DFGEVkk=9b6w z1rNjsuo(=K^*O{R$1(9tUcn+U`5y<*2?v2 zIg|UD#U}eQ@-m8oT`dN7^#TqtMsbhBd?~w#il;I*hE7 zSM!)`thHcdJTSRYKy30E#$>+G;?yFS#F9jY|3JVqS&&tEavW3C=6W7|)(9D(QSX@{ zn8D7IVFHl91;{r5(jd$T#Bjg|XE8A3WF{3Q7FFt(=4F;tDx{>QC6?xtC={g@=a&{G brxs666tbUOAY_0AOKlbra$uPpAtnL<{&+Ux diff --git a/clients/unity/simple_sample/Library/metadata/ff/ffba25341839373409b0cd511e9b1761 b/clients/unity/simple_sample/Library/metadata/ff/ffba25341839373409b0cd511e9b1761 index cdd44b7276e532fdf937c18fe127b877d72986eb..3857ba0bebaa29e13f22b8ac06bf91ce85d799b0 100644 GIT binary patch delta 20128 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 h01o5-2Ot@?rXS-<$CrKw3mgV`O8@{A!ij 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 Q`N7Mtl2vN_;`yI;1yt@b5dZ)H diff --git a/clients/unity/simple_sample/ProjectSettings/EditorBuildSettings.asset b/clients/unity/simple_sample/ProjectSettings/EditorBuildSettings.asset index 82383f9954cf3b208be6a9f2e13f885ef5929805..6dc24f7dfdb697ad6f5d0a4ec5599bcd3cbd2f43 100644 GIT binary patch literal 138 zcmW;Cy9&ZE6oBD9PjNcb$&{q(lC6T5L2;-EA|f$4lp|>ZxeWUBR@d+U>uYyBfNUhI z&)p8HQbE>(DxUItVH*?1c`Kw;jC200QY=?6lWb!thqx}}Y>zpUACh7K2_ydrDQ2q literal 4104 zcmeHE%TB{E5S;La6BmA?QlZ>SB@moAM4XWmo7N~K$TmoD%8&9Zgxz&Rd*~ZD1LzR69A`_DFL&|baMSN#qTf-1@#vPz^(PE3yTlm*wUrs+hxSUL@_3G+$@2$IQ3{4Rkn3aR`Sbq|#3p7yHu60p}g>c058G93g`9fY< ze1DsVFg#Oc@#w#u=&>fpsKvF&z?x)4>X7#+1kz`ks_PoK)>MtNa&RP&HE5ojm;$+h zcav5^bi9q}ci)-q9{;_V@4hoVhs22Ere2wlugtq=a=u|&xBtxCvl71_e;Vq5I-m}y V1L}Y}pbn@5>VP_+4yXg_z#qw`SUdm# diff --git a/clients/unity/simple_sample/ProjectSettings/EditorSettings.asset b/clients/unity/simple_sample/ProjectSettings/EditorSettings.asset index 5e1df7d31e964994a3637ee8e2b030eb07d583d8..63cabb583062ede7cc2855a9b69ec404318aad8c 100644 GIT binary patch delta 207 zcmXYpu?_)26h%Whi9|(1@)RoyD~2dcr&ts=3L;U-FfTGPW|G~v2^!xZ^h!VC!;Gap z=brn9SMeIGNAV1JhqGWgnm{9K0Li_`tfq5cb$0I9?sYjAEDXc1<%1zKIg6Agmn@J- z+kGk+z;QF*9&krft#E9lhtTyn#Y9V^FQ`_Sq}o{ly?h;=2ormIR9gaKBne|}FwNEC g-$?TN*eU!q_h+F}imcokRKIgi>O}$fTDe(ZA4y(4*Z=?k literal 4164 zcmeH~y-ve05XZ0O8y22|F;yunOnfw`NFau&Fd{cGtx;lE&P64i`X;;zPe!1htvB9}nZ z700u6`LhDpAveC$I5>su<#F;RV;reO-ll@GwrP?Jvaw(P=V+-aC4}!NtrqE%w7D|+ z#%Q!Ajf(l)SghBp*IB2oT!|}dMG5Z9nzkC{JC{yd(go(T(yKv9qK zPS~0eN+YR^q*WqSOM#^E!6dHYt_$C6in}iUSxzDu7gk{zW<^@3g<4EfnbcbLS~53C z+LA{m$FWUoAp6ba&vqbmvYT!E1>~?%XMHZefgH6&@K6&F-y^;*+`M@Lo`5Id33vjY zfG6Mycmke)C*TSEGXngC9ID(sNPo1Qke?yWFM7SjVi9CzVltt05Sy%*l~a+)pwRT7 H9V7tXi&u%F diff --git a/clients/unity/simple_sample/ProjectSettings/GraphicsSettings.asset b/clients/unity/simple_sample/ProjectSettings/GraphicsSettings.asset new file mode 100644 index 000000000..553f97d4b --- /dev/null +++ b/clients/unity/simple_sample/ProjectSettings/GraphicsSettings.asset @@ -0,0 +1,7 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!30 &1 +GraphicsSettings: + m_ObjectHideFlags: 0 + m_AlwaysIncludedShaders: + - {fileID: 7, guid: 0000000000000000f000000000000000, type: 0} diff --git a/clients/unity/simple_sample/ProjectSettings/InputManager.asset b/clients/unity/simple_sample/ProjectSettings/InputManager.asset index 14964590c1279d4e5c7d1f0af38df2c00f0338bd..c95d27bd28f3f4184f3abf157ec466f8e7cd42ac 100644 GIT binary patch literal 4897 zcmd^?QE$^Q5Xay9DQ*wriAKpPq>;DsFb1Lp2?Xp3dC8G^Bu->I-MUXte3wj}yNQ-I zQwn*Ce0Q?-yZ@cf#~0Jt2Z(}bbo^!d7LMv8up*0VCGB#O21!}GJPD&H9*xIiXN@NC zA{xC@Rc&WNi41i-0w{ibyu8N5p34-^a*>%BLRy~QqHzvmFsP--3uOD+DrUm7s&?s3ZLQlN$DfwMs?td3+ZnXXuGk`S zJNKdlg*1jwUQ|kkOp8SWr#pU%B8?#k!zkqM6?qv{wB?GYQKE_=BC}Kr)Rrj$*k#oK zaKr$_t!(K5T$jsvU9e>Xf(=+JlRffF%Ns?9^7+*jpLHFc=?p%+8!`+R-kH?Mx!H&E z9;N2w2#M7!@JE#Q6uY9V4YvBYC+PG>0h=iB-kC+nfxU>(aXe|ywR;6W&9TAP;qnW( zTlXc%7&*y@fRX!S&vGodt8J}D&hgMOzOM^zRlQL(l}NBt+@?w-|Dm&+QP=rSXYCE& zZsb-QApbwOcZ2Ru=9>Rg?_;kWE?_2h@qZFydRvYxOzd-_%RK*fg}A@jkCNceEkjis zH`6WI^)N8^3@wOGU(`qE(T>)KexW|YXzYXJgl{q29Sq2xhhraPTSfnvBKseYeU6;A0}|wK D?Ut?d literal 5252 zcmeHLNpI6Y6n&NOv#?8u&^O-_~Qfg69U z{3XJCGoE_vj%iMuJW}#z`QG`)I_qmFOh-eCPT=&(5%x?J! zHJD&3+)=$kpd=aYoHU7u{je!TEwh%s*3lGY0>TzW9g}mISHHT>M^RL&Lu1l`x6Wd% z2cGgqsHRv_M5?F36EF7L!te4uVJ9s(yiVJ z>S{-ck8D}GE?ej_T~~(Cb=Bf=>$>JZq`FujmiMRZy5&$N?Zyz&ZdyEUX}27ROxpYX zS-WjHlu5fYgtVH)UfmjP7Ca4*+t}l9O^SNiCD1DqXs=--9LGG7A5+16uFk}xL z$kiwcC<$3xJva}`5PsO@u~3*tHb(9OXnrV2^xAsEe5~j6lbUJVRO%Jl*K;NG@z9W<$YT)v63s8K^Q)WuVGHm4PY)RR;c725|PmA+jFDem@EY z3$n;~=?nOpz!^FAo9jYayvecDHl!t*nTf`JyoAM?-S86mQNDlrUd9T}Mzk5?$lhsd zKKT(s@oq}{FFxp4@MAuyaM>Tu%+Oi$L~P{aG~S9j39mhqz5cw`*q_h5bkA^36&9df zamuq0mNGs>KbUVCPFCCF^I9rx86P5-^C4evJ1v>1tU+_qW**O`WUrh9v6fUWKIc4K zgWtQmuP|@l%gq0a%Oy8w`x_3N%ys+~FOGuX(>mwoKINPX1Dnfy7AmXNf~y*S{WbTR zX!{KY#vgrGU1Gl2_Wb3Az~5YtshMIO;yUGFD3JyKy|${pHK^*#c+2mR;Vjmni!&eh XV9sJKx;XQ3%Q;>3=;F)AEa&?RumY=< diff --git a/clients/unity/simple_sample/ProjectSettings/NavMeshLayers.asset b/clients/unity/simple_sample/ProjectSettings/NavMeshLayers.asset index a337582595ae45f01e57e70a0cf2aa79da5fc3a1..79cb3ae98057744b2b7e71bbd761df7f5747e3b7 100644 GIT binary patch literal 1907 zcmbW0Jx{|h5Qg{sitA7&QspjCT5m-N5NgX(gqV<t~TAAW~sVj3R zlt+}lK5jou3ZWFyL6b1G6b!ijl+l<;u3Yt=)Os7WCjd{~$;@X`kFPtK7*Cw`Z zQ|;>t`Q4#Ta_q3q9X;#hQ*RUVN1GEtq}%49O!pnUxs|A&;;Ar)Q!{k1pW(y$tb_G} z565~zhht%PzTwyfhFxOV6vM7CY=&WT4C9{a!(X8JYDdBU!GWSMXbOX>Fz5<{vM^{1 ggSs&2i-5ie=!<~92n!5XT!(F`$Audw^L%?#QNF5D}1|0%FGDZVwjr?r?VxJq)Zl=d74>&N=6t zbJpMe8$7GS;CHL5>3+{&?f3Skrsq>Ny&qz<@vU%j# zj%M|DUteE8+CP(Cv$GYmiq$1Ev)*E*swQXEqN1aH8rMT(s;<;f+RUHcRU6%+Iv37a zw6xe(n^tNsPAzAPt7;uOXh65kW2`+Tt7U3(PpMoRQR-?kr)wHzPSu~X^vF*&fZ}Sc zQtDc)y0T8Y96hIpW(L>oc2cF1^(y;UFF9X@W`-1$(sk$BC09!;i)NMU(wrWKv7u^P zl2uf@UY?#^&&?vyQSQ!as;#?PGergh;zCvGs;OdosWz{7xjobR01a_*%ty2FLH}H4 z=oM)7l8+4yv34ID5u|&TeFc-rCaiQ;G7l2Y+*w4tWkQH*V8)GCFyAu<0u?N(VUF<0k%*9@SxX^d8 zH$W*aMw{=8eIP63VgzF(7bA&@x!4!#$S&w6Y(`#5?=Tn5mM|xCq3@yvpcEHljEm8b z6>>3#F_Me1#N_WF^nEc7>c}p}3j}j90T37ZE+zt$;$p0Eu^(iGTrsKx`Vy>Q|fdq3g&k}YqF7|rQ`2eN3m}p!a1z8~%3mBtU z%3T~ybNM?6eRm!Mbu_C-ql;th$z_u8a#ABgwdk7$ZV&3v!!rG1QS|Tp|!m#-)I`(3f!;KuI!e z|9Ls2g=Ad87)i#J#KdG=1$AT@R|^D_aSb3Y^krNNP?8MWfL;e_AsN>*Mv`#@F)c}$Q76>Ne9Y9>@%Xk-{BpJ2?eGk$?GTvv5B;x~OVlqC2Ip*BjIRMol3_d0Zy+rs z<6Fi^GQJ}wCgXdkBg^bNqkjVHmpBH}?37|h)>GEcC+e;J>F*$V&F-!>Ey&8t mvPETj>{V~2Df1sCX7qIGhb;xo*->vDkcY(mA8Q%^-NQdYu#0X0 diff --git a/clients/unity/simple_sample/ProjectSettings/NetworkManager.asset b/clients/unity/simple_sample/ProjectSettings/NetworkManager.asset index 758bf35263393a15b533c87c7a01340269030023..5dc6a831d9f2a11f08ed96571e0f602e3c3908b5 100644 GIT binary patch literal 151 zcmY$5boBL6Fw`^TQVnr*S5PcfR47SIw<^ucEU7e3(M!(H)iE+KG_>N<)zt;b8k$%t zs2OtkrIwWE7iIe<<|U@57FlsADCEZbCuOB3mw05Rq`KuKrWac&7=VRcQj<#4eNxL( nb6_IDsd*_yi6yC43Wla&C62|#sU;!#0Y#~4iAh!p)wNszrV1>) literal 4112 zcmeH_Sx&<+5I~2r@BQQy6>Z@UAr)0El~^K`ej!x3&7=gfRJIF(dvF*oN0@P9h@whx z0FUH&dm4LQ3{d+7sMi5tn|kU1P8!X|Y0!kPEX!7C{z2^q^=m4huSFteDB(gV1lrD+ z=U|RwjoN6C=ynU@@$KXZr}{GVu@{M%GMg6U-j2gW6WzthVs?cu7#Xm}=_oA3;~+`} zqeD!5DKr{zm3Ju0U@Yc@b(BJVmwFNdF)`QW>v7oAx$j6R-ij}mv|icgiwyIURQR5s zxj}0jHV=>IB9!0@E#Qb|o4iC}3C_|V4Z0A7QfXs)%K*Pf$sMP;KYlRv(SI>vGx4NQ zY_MjI?c~(YfmN)PW4nJ~?Ht=%f_a{nXMGW4{$I~Q;WSNr;5zmzd`Vh7?u8Lj2!J@ zj*gB<+v#3L|LA;}XKcrH%&ir2ZF(P~D1V$S|HBh|BT{~qF$kj*hz-|*W#Vt1{=u~o zO7@~I#C@4+CDOT8E0J;SZBxEtWoF|C17S!0P=j){qGAuK?is0gVK1z4$=jamtc@QN*}x{s%xLZK1)sDB~v~r7JSZ=XR;KUtDng zX9i^OP8#V~A%RYBOX=bk8mV*M=$OsAD`6!!;RHEL=vItFsHsW=5Rr9UaGq>NgToze zI7?q)*^3Z2LUr#ATf>Fx5r{(5_-jJmEi#($95Cpe9-6c-`#Y7@$B6pmV+1t7C&MRU z(BZN<`d^_wIwuYj4%Jt{FOPI@tfi<3?SBaDNSzNhawz9aUp%r=UZZFeu#CRtk8xQP zXkfIoDd75!ZrF{JC_3w%B1X67Q}3+$vvc0-oV31NR)5dz1_Q=_6Z4Ide1I+h6sO3a zSPAMop!{(_^<#{l3e&MiK=|u>LhjY)<>|%6s=HcUq@PxoXWa{ytd^fIPcAM$Ez^WR zzr8~}*gD5_s4&|6?m;(nr9y`Z+NqFn`c$txZ#3vXV1(wWYmqFQC_rirC`{Q|L0@rF ztYL+4=dofbG9d7TKl98FM;~EKO<16;gN6bOngkjJVfrN0%2g{JebOxWFu~6WF21$}y6s-GD>-65<+Oe1~B#05XWz0JN~ngSZlvmY}RO z1ExV;P%OTL%JG-2urnE#D9j2?%W-WR+g%psWC#^g%WNu$-Dd&b;s!$npdJ6xaDfEA z%b2Cr^!vF}mIin4HLnNZJN>@PK9s({yNbur1qDTWuQ*{F*V{4A8DK@w(RJf1AFPejG;d0vE21?oCh9^%`wvE{{r)s9`d0LQ|KA4B}76qHbBt*fX>p&9YUA|OVAR(Zf%<~;M z5ZZ()rDiuE#xxk<0i^x49lhe{=T~;0-)YzJTxicB-m+SSRKEQ>ZCikvD;IBD*v1AY zA97863D?)$&TEA+FL)L--dd~T()}agP2Jd-lE4^eKJS=Xn9Dv43Ea;JN&UG|n+`UmN4Ss>7qd3V~{y$#jA`>Fc#2KGPhAHlR1I zzX__jIuej3?%!n#z70iGE1Pa}PjCPVCBcz-e1gp5vm*0uQ5$|7#x*gtRsWaYd&6I? zua7ij1#^s35GuN9gHeE1)*U>jfn literal 15876 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 diff --git a/clients/unity/simple_sample/ProjectSettings/QualitySettings.asset b/clients/unity/simple_sample/ProjectSettings/QualitySettings.asset index 4a262b3a2bedc361a8b44f509615082850ea9b94..25675a267d74d325144244a167ab72de1651af0f 100644 GIT binary patch literal 2957 zcmdUx-*4J55Xay7E8K_fX`losrFnz?+5=OwrfNG)Q{~17cynyz*e&d@-z6rgsUo$s zOx5y4F308WKKc4?|NH3cgoK^2wSP4_Cwq2}7&?orO`?k?_sL2ABm24{kzkpyVYL38x|1MC`f&XtVFLFs*LwFYU{ zks{J7tqpj}>dl_};C7KIUVFF>*zC~~M>4J?h-P#5b0P|0&; zv|8}=$~n{-Qfc@|aGGO#>mt!Z-W^=bJOUp@-`C{IUWe<$jCCoT7P|0r~p z`Y3d_+li`suoG2{f#T$uTG5QE7>3n2LSgw$_EGuvx1u_1Lgl{1Ee=AL$>!8rXSX@E zT+j1oQ|o0^9XDLJgB1qdooMO|3&SbM(`H)k9WM%NJ6e9wCt-yL{{=2r>UOaD!O?4^ zmEFaltDWNnrqqghi7fGqB-4tsN;P9a)8AvzdR6T6jmtE0tMRgQ(FE4wB_fbPz=4Kv6H4@CNnX0OMBN*cI8-%cIDA(L)@!e z_JS8ESA7&7pnau=^Brkz*=+Ivj5V{?&wl4SN1vqio)zNsYeHNwLWnnnI7gKbKV83Z z{paBg@$%^CXodRU)Ad^|jrNm)@?MvFmFUSz3A%p-0~BHr;!ucJsk;Ab={rA);?d6T zA1d=(I#-)Uk`-=(5e0SA)}<%(dhMJleRRd(R~QVoV65?!k}gDp(KlNV(08m4l-bsMBfoBI>O+OM60C@9z*Zxf z+dsp4ojnnAS5?;3UfYrh-#!uCcNY7h0l#x1cwJVR%vA{D-4^K3SlNWSp(`)TEUaDF z#q(>2S?wBC<_{Dk2(0H@SON6vz}HTt8xd=Y0)G{V>6<&|X5p)b!zcYQnP;ea)ZVFIo_V9MjXTuUsR*h8oJ+OdphZrhS>%iNkg^z9P(2 z4Z^gkaV6!6?XlGH`2tT@Q$%EmdJVO!JTK0*1rXdWF3#69)`YXN)*j9`2@kL+^MZXF z2B%EuVsBO|vt`a3?7IXKn_M-{(J>?j{^xKl%Tj@*0!sy!3M>^^DzH@G|E>UXX5_HQ zQ8($`T+vHhT4wJ_C;~@f|LdYHMqDFe`dDNx_I|&D=(fuXPzd9LtF!0 zjE$PTEW)mh3u9^NbUL@tUyFl?>5jEIeB)|3LM*GjP=|3gAwb|fWS-c;hZ50KlCs`m zjSnZ#FXaq8fAtzIruU|N{{+4W0NqE^11xke2f}=F=Z^xQ(v~14^xPX>3VrfP1(e dsNGpxYi`5m!`{xr&dndVkG0eN5!+!t{{k3Ffdl{m diff --git a/clients/unity/simple_sample/ProjectSettings/TagManager.asset b/clients/unity/simple_sample/ProjectSettings/TagManager.asset index 1e809a75d051476074624f88d4aa6bff655b6d02..ac1fdfebfd39b8fbf495b243a0ee095236346ff5 100644 GIT binary patch literal 708 zcmZwDv2MaJ5C-5qPjL)%Y9j8^0`*2!wL*fWN(GE3>PC^MsT^m>+v7A#Wp`ji2 zoZ|A@HJ8vh+G%e+EeyTcAMGvyj@VG;)wO@>tqbo*C=f&2+FiY+Pwmgz;uWRA7oQ9r zG*}PUJ>Mx_-pN+~*;gC&;|%LGcu50}W5)L;J@LoVB#x8RjQnX=#3wbQdRjA@rwND| e$P8uyvw&H^EMOKe3z!AW0%ifTfVl*7Ihb!aSI7ha literal 5352 zcmc(hXHyeV6oxPME-3Z}_KGB-S_4)TD_}3I5JD7#CIJOo?EF-Jh4GwwvNI>idnWtM zJG1QO-Y4&UxC8I3bIq5WYyRV$TS@m(y1S0HSX<{r%>6BuN)7b+CSAip`bLlq(y5&5 z5ArETOC@G`Fyo5OwbE@iHCC9;xk8Z6d&aNPyuUBVy)Tyw=A8WGoJHmJkm1im1KC0% z?(&)Wlv_fd7t_VVGb`jdU&v*$X*V7e0>2k?Ji;8lSMRm7yv}P4SDiz9Eu%Fao+(H6EYZ0*b}GSfj!%G2W=2*anq@#Wn&0 ziY2^Qv%)R0O%cR4s~jx01rSiI!;5WIxFxnNg4lMIgT;0L0*ZBdv7HLH#CAmx+pTi2 z*d9PYu`VyxqHs&Bm6&>eV|!H&7TX61DAw)8_AA^HI}kzapvu8whX7F)8_83BNs0A% ztHX-rw&!E1F0mst7amtb5|`LfVt9lcKUbF6F`lBKiCU{(Z*^Qy&stU|RF-AcrgC^+ z9+g%nWwMS{Od7vk!IoBxnDAG$wBjlUYb5|tdss2)`wj(LTAdNJx>OF<>IMYRlD6+r zu%*=-LF<&t!CI#Q0kov+&nVc^IvYXjoXWvk=K%qu2olAgb)U`vZ$HS20!RykPf3Lt=%v^>4z`Qf9AvVC=J4G`f^itkB$TGwceN67JW zWkFo$DH@spTGH`@!g|;`ts5%L(&Be>9(vPCty=x{USizRo2r=O)SX%c~4%WI4h}zSNOUpk{u%-1dg4QFIgS8$50%%FgKT)uy z^)!OkGnIq2o&y4CNz0Ea*wPA!;jR3Y#Q%veR1Ve}0|d~LmLFHJrIjM4p4NoQ!CGlR z04-_xNd;S4nFv}hRSwpA1qh%eEkC7TOY3z6t*pwyTGN04TGH}w6l`g|ji8lNIan(X z2%se`Ur?~6H4{N=R^?!=cYpv|((>;WY-!C!(3)2{SnC5IfR?oUM+IA2pCV{|RykPf z3m|H>64LTT1zTEQiQ%pMmBhXEP32&%?|=YW((*qPY-#-@rk>U>m4mf@1A?c*WPViZ$&e>^(I4PI5|DiX>Nqki literal 4112 zcmeH@I|{-;5QcwWpjKW$$O!~rohVuaErNwwhgDaJ>?UF&T6z~dJ&?CC?j#08ynrwR z!_2V%JoW=}b)Z%QP%+U2pwnnJx|=4RaUADNT{1rRv~+|ow(@|H2<2N!a)3l+MdOQ! zAGKT1?sU16t7z=4rLDv^Odc~K#Vp^bKt!;;vs_!WC5+@g5$9>7u|!x-^Hl7Jv!{>R z8Y&f>zS|0^@<*F?Y5r^_luQ=Txn!RUvO2qth|vGZ*_Z$mU;<2l2`~XBzyz286JP>N TfC>CFf$HPhyWeho;4*jt@+UG+ From e7010172e9c437e65abed97c9e5069d7ae3fa773 Mon Sep 17 00:00:00 2001 From: Japa Date: Tue, 19 Nov 2013 04:19:48 +0530 Subject: [PATCH 62/72] I don't even remember what I did, but it must have been important. Signed-off-by: Japa --- .../unity/simple_sample/Assets/Start.unity | 149 +++++------------- .../unity/simple_sample/Assets/UV Test.mat | 14 +- .../simple_sample/Assets/VertexColor.shader | 62 ++++---- .../Library/InspectorExpandedItems.asset | Bin 4292 -> 4324 bytes .../simple_sample/Library/assetDatabase3 | Bin 31276 -> 31276 bytes .../fc/fcc33854b846d0e4aa14f8afb74e173b | Bin 20406 -> 20372 bytes .../ff/ff990239cc3bc4a45a362f932463d378 | Bin 5740 -> 771444 bytes 7 files changed, 78 insertions(+), 147 deletions(-) diff --git a/clients/unity/simple_sample/Assets/Start.unity b/clients/unity/simple_sample/Assets/Start.unity index a3dc53f88..a9385d995 100644 --- a/clients/unity/simple_sample/Assets/Start.unity +++ b/clients/unity/simple_sample/Assets/Start.unity @@ -239,42 +239,15 @@ Transform: m_Children: - {fileID: 2141415061} m_Father: {fileID: 861361728} ---- !u!1 &861361727 +--- !u!1 &692705302 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 0} serializedVersion: 4 m_Component: - - 4: {fileID: 861361728} - m_Layer: 0 - m_Name: GameObject - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &861361728 -Transform: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 861361727} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 16, y: -.5, z: 17.5} - m_LocalScale: {x: 1, y: 1, z: 1} - m_Children: - - {fileID: 420635570} - m_Father: {fileID: 0} ---- !u!1 &990642317 -GameObject: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - serializedVersion: 4 - m_Component: - - 4: {fileID: 990642319} - - 108: {fileID: 990642318} + - 4: {fileID: 692705304} + - 108: {fileID: 692705303} m_Layer: 0 m_Name: Directional light m_TagString: Untagged @@ -282,12 +255,12 @@ GameObject: m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 ---- !u!108 &990642318 +--- !u!108 &692705303 Light: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 990642317} + m_GameObject: {fileID: 692705302} m_Enabled: 1 serializedVersion: 3 m_Type: 1 @@ -300,7 +273,7 @@ Light: m_Type: 1 m_Resolution: -1 m_Strength: 1 - m_Bias: .00999999978 + m_Bias: .0500000007 m_Softness: 4 m_SoftnessFade: 1 m_Cookie: {fileID: 0} @@ -317,17 +290,44 @@ Light: m_ShadowAngle: 0 m_IndirectIntensity: 1 m_AreaSize: {x: 1, y: 1} ---- !u!4 &990642319 +--- !u!4 &692705304 Transform: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 990642317} + m_GameObject: {fileID: 692705302} m_LocalRotation: {x: .408217937, y: -.234569728, z: .109381661, w: .875426114} - m_LocalPosition: {x: 0, y: 10, z: 0} + m_LocalPosition: {x: -2.00056601, y: 1.30904579, z: 6.58499813} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} +--- !u!1 &861361727 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + serializedVersion: 4 + m_Component: + - 4: {fileID: 861361728} + m_Layer: 0 + m_Name: GameObject + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &861361728 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 861361727} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 16, y: -.5, z: 17.5} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 420635570} + m_Father: {fileID: 0} --- !u!1 &1293186818 GameObject: m_ObjectHideFlags: 0 @@ -413,8 +413,8 @@ Camera: y: 0 width: 1 height: 1 - near clip plane: .300000012 - far clip plane: 1000 + near clip plane: 20 + far clip plane: 30 field of view: 50 orthographic: 0 orthographic size: 100 @@ -432,7 +432,7 @@ Transform: m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1336453706} m_LocalRotation: {x: .707106829, y: 0, z: 0, w: .707106829} - m_LocalPosition: {x: 0, y: 23.8978653, z: 0} + m_LocalPosition: {x: 0, y: 20, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1293186819} @@ -472,73 +472,6 @@ MonoBehaviour: viewPortHeight: 25 verticalShift: 0 viewDistance: 10 ---- !u!1 &1709742914 -GameObject: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - serializedVersion: 4 - m_Component: - - 4: {fileID: 1709742918} - - 33: {fileID: 1709742917} - - 64: {fileID: 1709742916} - - 23: {fileID: 1709742915} - m_Layer: 0 - m_Name: Quad - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!23 &1709742915 -Renderer: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1709742914} - m_Enabled: 1 - m_CastShadows: 1 - m_ReceiveShadows: 1 - m_LightmapIndex: 255 - m_LightmapTilingOffset: {x: 1, y: 1, z: 0, w: 0} - m_Materials: - - {fileID: 10302, guid: 0000000000000000f000000000000000, type: 0} - m_SubsetIndices: - m_StaticBatchRoot: {fileID: 0} - m_UseLightProbes: 0 - m_LightProbeAnchor: {fileID: 0} - m_ScaleInLightmap: 1 ---- !u!64 &1709742916 -MeshCollider: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1709742914} - m_Material: {fileID: 0} - m_IsTrigger: 0 - m_Enabled: 1 - serializedVersion: 2 - m_SmoothSphereCollisions: 0 - m_Convex: 0 - m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0} ---- !u!33 &1709742917 -MeshFilter: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1709742914} - m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0} ---- !u!4 &1709742918 -Transform: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1709742914} - m_LocalRotation: {x: .707106829, y: 0, z: 0, w: .707106829} - m_LocalPosition: {x: 0, y: -5, z: 0} - m_LocalScale: {x: 256, y: 256, z: 1} - m_Children: [] - m_Father: {fileID: 0} --- !u!1 &2141415060 GameObject: m_ObjectHideFlags: 0 @@ -564,8 +497,8 @@ Transform: m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 2141415060} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: -32, y: -2, z: 32} - m_LocalScale: {x: 4, y: 4, z: 4} + m_LocalPosition: {x: -8, y: 0, z: 8} + m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 420635570} --- !u!33 &2141415062 diff --git a/clients/unity/simple_sample/Assets/UV Test.mat b/clients/unity/simple_sample/Assets/UV Test.mat index ecab51c06..da5f6cde4 100644 --- a/clients/unity/simple_sample/Assets/UV Test.mat +++ b/clients/unity/simple_sample/Assets/UV Test.mat @@ -28,24 +28,24 @@ Material: m_Offset: {x: 0, y: 0} data: first: - name: _DecalTex + name: _Detail second: - m_Texture: {fileID: 0} - m_Scale: {x: 1, y: 1} + m_Texture: {fileID: 2800000, guid: d420514133a0fbd4990025b3e1dac764, type: 3} + m_Scale: {x: 16, y: 16} m_Offset: {x: 0, y: 0} data: first: - name: _LightMap + name: _DecalTex second: m_Texture: {fileID: 0} m_Scale: {x: 1, y: 1} m_Offset: {x: 0, y: 0} data: first: - name: _Detail + name: _LightMap second: - m_Texture: {fileID: 2800000, guid: d420514133a0fbd4990025b3e1dac764, type: 3} - m_Scale: {x: 16, y: 16} + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} m_Offset: {x: 0, y: 0} data: first: diff --git a/clients/unity/simple_sample/Assets/VertexColor.shader b/clients/unity/simple_sample/Assets/VertexColor.shader index 84ecf2413..daeaaee08 100644 --- a/clients/unity/simple_sample/Assets/VertexColor.shader +++ b/clients/unity/simple_sample/Assets/VertexColor.shader @@ -1,33 +1,31 @@ -// Upgrade NOTE: replaced 'SeperateSpecular' with 'SeparateSpecular' - -Shader " Vertex Colored" { -Properties { - _Color ("Main Color", Color) = (1,1,1,1) - _SpecColor ("Spec Color", Color) = (1,1,1,1) - _Emission ("Emmisive Color", Color) = (0,0,0,0) - _Shininess ("Shininess", Range (0.01, 1)) = 0.7 - _MainTex ("Base (RGB)", 2D) = "white" {} -} - -SubShader { - Pass { - Material { - Shininess [_Shininess] - Specular [_SpecColor] - Emission [_Emission] - } - ColorMaterial AmbientAndDiffuse - Lighting On - SeparateSpecular On - SetTexture [_MainTex] { - Combine texture * primary, texture * primary - } - SetTexture [_MainTex] { - constantColor [_Color] - Combine previous * constant DOUBLE, previous * constant - } - } -} - -Fallback " VertexLit", 1 +Shader " Vertex Colored" +{ + Properties + { + _Color ("Diffuse Color", Color) = (1,1,1,1) + _MainTex ("Texture", 2D) = "white" {} + } + + SubShader + { + Tags { "RenderType" = "Opaque" } + CGPROGRAM + #pragma surface surf Lambert + struct Input + { + float2 uv_MainTex; + float4 color: Color; // Vertex color + }; + sampler2D _MainTex; + fixed4 _Color; + void surf (Input IN, inout SurfaceOutput o) + { + o.Albedo = tex2D (_MainTex, IN.uv_MainTex).rgb; + o.Albedo *= _Color; + o.Albedo *= IN.color.rgb; + } + ENDCG + } + + Fallback "Diffuse", 1 } \ No newline at end of file diff --git a/clients/unity/simple_sample/Library/InspectorExpandedItems.asset b/clients/unity/simple_sample/Library/InspectorExpandedItems.asset index d27d63677c61fb98db81275a0498387fb58039ee..8a6edef58d832cf1dc12060aa037ae60adfcd937 100644 GIT binary patch delta 74 zcmX@2_(YL|fq~hGfkEKOMh;zOt|tr(3=%9LyxEcYFb^{W1IJ`mf&B`MKyf)Bh5-=Y I0mcE+0NH8?;{X5v delta 41 ucmaE&ctnwdfq~hGfkEKNMh;zOt|JT#3=%9LyxEcYFb^{W1KVU)f&Bopwg@2r diff --git a/clients/unity/simple_sample/Library/assetDatabase3 b/clients/unity/simple_sample/Library/assetDatabase3 index 379e16f02506247685c932115141cfaa76acc4ac..a8b454d3ac86f44553b52273c57f0d34209d8ad0 100644 GIT binary patch delta 63 zcmV-F0KosO^Z~5&0kCEj1e?$Pmy>E0*ahIMBc>CxM;7}71kn-orjte*cn{d+kf{^S V008lUn#tmtrEMJ@rrcKTgy}`ONHsuEYW_PjQ%q;niKruI|3jPIUxzmKtF);kn SvI5e|lLMv1Hb0i~j0XTqL>UhN diff --git a/clients/unity/simple_sample/Library/metadata/fc/fcc33854b846d0e4aa14f8afb74e173b b/clients/unity/simple_sample/Library/metadata/fc/fcc33854b846d0e4aa14f8afb74e173b index 2e1251edd9771d5e9a921bc57fccbe5110069b67..bdaf612c912e68cb31da360fa8af9b42ed44847b 100644 GIT binary patch delta 16190 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 delta 16224 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 K0tP>mdQTc3P_!!m diff --git a/clients/unity/simple_sample/Library/metadata/ff/ff990239cc3bc4a45a362f932463d378 b/clients/unity/simple_sample/Library/metadata/ff/ff990239cc3bc4a45a362f932463d378 index d5d8101523d84c56e6bd929055c6a1257f65a73c..408ad7419b305662b6258df4a6dbd9ce828c3b28 100644 GIT binary patch literal 771444 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 delta 940 zcmah|O>5gg5Zz)3LG8tto(J_1JBV2BrBLW0j@@3II*F1}2*#}KiM3Q-iPb7;DMt5R zbI9-Lt@NIM(^Kiaon3tdC4ow;G@5<0@9o>spKrZi-Zo?H-;6!~_J_cgwV3_&T%gqZayb+i7g>rmZY)-z z7IFm>S?8!-8g0>>)8v%S6q3%;w`qQFw+AutNd#&ji`<1oi8WVWyoafp^-g<$k8s?h zSi~~bTxz?|oV3`W=~pEqQFtlhEQMXD%3wG-8;nOD341VirwD9l&;2crqB&oDs{f3! X(9|M*XTunKM&n62wr-AZpT779Pa_QL From b600002fbc0103fd23be5a61a16c10bf70cf0a84 Mon Sep 17 00:00:00 2001 From: JapaMala Date: Fri, 13 Jun 2014 20:39:47 +0530 Subject: [PATCH 63/72] Removed the unity client from the repo. It's been put to its own repository, and isn't really part of DFhack. --- clients/unity/.gitignore | 11 - clients/unity/simple_sample/.gitignore | 12 - .../unity/simple_sample/Assets/ArenaMode.png | Bin 23372 -> 0 bytes .../simple_sample/Assets/ArenaMode.png.meta | 36 - clients/unity/simple_sample/Assets/Bad.mat | 27 - .../unity/simple_sample/Assets/Bad.mat.meta | 4 - .../unity/simple_sample/Assets/DFHack.meta | 5 - .../Assets/DFHack/isoworldremote.pb.cs | 356 ------ .../Assets/DFHack/isoworldremote.pb.cs.meta | 8 - .../unity/simple_sample/Assets/Editor.meta | 5 - .../Assets/Editor/MapBlockEditor.cs | 110 -- .../Assets/Editor/MapBlockEditor.cs.meta | 8 - .../unity/simple_sample/Assets/GameWindow.cs | 57 - .../simple_sample/Assets/GameWindow.cs.meta | 8 - clients/unity/simple_sample/Assets/HUDFPS.cs | 79 -- .../unity/simple_sample/Assets/HUDFPS.cs.meta | 8 - .../unity/simple_sample/Assets/MapGen.meta | 5 - .../simple_sample/Assets/MapGen/GameMap.cs | 15 - .../Assets/MapGen/GameMap.cs.meta | 8 - .../simple_sample/Assets/MapGen/MapBlock.cs | 321 ----- .../Assets/MapGen/MapBlock.cs.meta | 8 - .../simple_sample/Assets/RemoteClient.meta | 5 - .../Assets/RemoteClient/Basic.cs | 968 --------------- .../Assets/RemoteClient/Basic.cs.meta | 8 - .../Assets/RemoteClient/BasicApi.cs | 460 ------- .../Assets/RemoteClient/BasicApi.cs.meta | 8 - .../Assets/RemoteClient/ColorText.cs | 119 -- .../Assets/RemoteClient/ColorText.cs.meta | 8 - .../Assets/RemoteClient/CoreProtocol.cs | 311 ----- .../Assets/RemoteClient/CoreProtocol.cs.meta | 8 - .../Assets/RemoteClient/RemoteClient.cs | 849 ------------- .../Assets/RemoteClient/RemoteClient.cs.meta | 8 - .../Assets/RemoteClient/Tools.cs | 690 ----------- .../Assets/RemoteClient/Tools.cs.meta | 8 - .../unity/simple_sample/Assets/Start.unity | 1053 ----------------- .../simple_sample/Assets/Start.unity.meta | 4 - .../unity/simple_sample/Assets/TestScript.cs | 21 - .../simple_sample/Assets/TestScript.cs.meta | 8 - .../unity/simple_sample/Assets/UV Test.mat | 78 -- .../simple_sample/Assets/UV Test.mat.meta | 4 - clients/unity/simple_sample/Assets/UVTest.png | Bin 298948 -> 0 bytes .../simple_sample/Assets/UVTest.png.meta | 36 - .../simple_sample/Assets/VertexColor.shader | 31 - .../Assets/VertexColor.shader.meta | 5 - clients/unity/simple_sample/Assets/grid.png | Bin 1615 -> 0 bytes .../unity/simple_sample/Assets/grid.png.meta | 36 - .../simple_sample/Assets/protobuf-net.dll | Bin 187904 -> 0 bytes .../Assets/protobuf-net.dll.meta | 7 - .../unity/simple_sample/Library/.gitignore | 1 - .../simple_sample/Library/AnnotationManager | Bin 4596 -> 0 bytes .../simple_sample/Library/AssetImportState | 1 - .../simple_sample/Library/AssetServerCacheV3 | Bin 5044 -> 0 bytes .../simple_sample/Library/AssetVersioning.db | Bin 14336 -> 0 bytes .../simple_sample/Library/BuildPlayer.prefs | 0 .../simple_sample/Library/BuildSettings.asset | Bin 4116 -> 0 bytes .../Library/EditorUserBuildSettings.asset | Bin 4172 -> 0 bytes .../Library/EditorUserSettings.asset | Bin 4108 -> 0 bytes .../Library/InspectorExpandedItems.asset | Bin 4324 -> 0 bytes .../simple_sample/Library/MonoManager.asset | Bin 4100 -> 0 bytes .../Library/ProjectSettings.asset | 205 ---- .../unity/simple_sample/Library/ScriptMapper | Bin 10564 -> 0 bytes .../simple_sample/Library/assetDatabase3 | Bin 31276 -> 0 bytes .../unity/simple_sample/Library/guidmapper | Bin 5204 -> 0 bytes .../00/00000000000000001000000000000000 | Bin 4268 -> 0 bytes .../00/00000000000000002000000000000000 | Bin 4304 -> 0 bytes .../00/00000000000000003000000000000000 | Bin 4296 -> 0 bytes .../00/00000000000000004000000000000000 | Bin 4308 -> 0 bytes .../00/00000000000000004100000000000000 | Bin 4308 -> 0 bytes .../00/00000000000000005000000000000000 | Bin 4296 -> 0 bytes .../00/00000000000000006000000000000000 | Bin 4304 -> 0 bytes .../00/00000000000000006100000000000000 | Bin 4308 -> 0 bytes .../00/00000000000000007000000000000000 | Bin 4304 -> 0 bytes .../00/00000000000000008000000000000000 | Bin 4308 -> 0 bytes .../00/00000000000000009000000000000000 | Bin 4308 -> 0 bytes .../00/0000000000000000a000000000000000 | Bin 4308 -> 0 bytes .../00/0000000000000000b000000000000000 | Bin 4320 -> 0 bytes .../00/0000000000000000c000000000000000 | Bin 4308 -> 0 bytes .../26/2678d7ad7ff72d248854d487d8f15c21 | Bin 43889 -> 0 bytes .../2f/2fb12edbd5d56cb4c99ccf773df52492 | Bin 7669 -> 0 bytes .../36/364a32494f42e934bae30ff47badc45a | Bin 25869 -> 0 bytes .../49/49176d7675a998345966feca21555311 | Bin 19789 -> 0 bytes .../6e/6e1305e96d61f204f8229e0a0cb7f8c1 | Bin 9169 -> 0 bytes .../73/73b3c5754a89e43409dcf23866eb0484 | Bin 33669 -> 0 bytes .../84/8401f7b1211481b469ac746534a896b8 | Bin 7713 -> 0 bytes .../89/8946b1d409fcda6499e46ca0fd310b73 | Bin 4296 -> 0 bytes .../89/89b0f8fea628a544a9855c108fbe35dc | Bin 365122 -> 0 bytes .../8d/8d11b6dacbf85e24ead2e95cafce40fd | Bin 17465 -> 0 bytes .../9f/9fd804cbd377fd445805d7e5eea47877 | Bin 10205 -> 0 bytes .../aa/aa92a0e1eefe93b40bec1e868142e050 | Bin 5037 -> 0 bytes .../ab/ab257b5c0c7259943a5b614e3dde558e | Bin 26333 -> 0 bytes .../b5/b54fa8be8a38a9f4e8f53b4399135e30 | Bin 7009 -> 0 bytes .../c7/c7e34aa4b4a41d1478337506ce720e18 | Bin 4276 -> 0 bytes .../d4/d420514133a0fbd4990025b3e1dac764 | Bin 50876 -> 0 bytes .../d8/d8595cea157337845be980bcc8978623 | Bin 17925 -> 0 bytes .../e4/e4195866782d0214cb59abbae44f068f | Bin 4288 -> 0 bytes .../e8/e85d437f881938247992e492006de2df | Bin 5349 -> 0 bytes .../eb/eb0b853da2a60f540a81dc515bab1875 | Bin 4284 -> 0 bytes .../f9/f9efc5e870ab48243b2f508f00b7a740 | Bin 4276 -> 0 bytes .../fc/fcc33854b846d0e4aa14f8afb74e173b | Bin 20372 -> 0 bytes .../fd/fd22bd16464e8784cbd88809cdc697a3 | Bin 4276 -> 0 bytes .../ff/ff990239cc3bc4a45a362f932463d378 | Bin 771444 -> 0 bytes .../ff/ffba25341839373409b0cd511e9b1761 | Bin 724664 -> 0 bytes .../ProjectSettings/AudioManager.asset | 12 - .../ProjectSettings/DynamicsManager.asset | 15 - .../ProjectSettings/EditorBuildSettings.asset | 7 - .../ProjectSettings/EditorSettings.asset | 10 - .../ProjectSettings/GraphicsSettings.asset | 7 - .../ProjectSettings/InputManager.asset | 246 ---- .../ProjectSettings/NavMeshLayers.asset | 133 --- .../ProjectSettings/NetworkManager.asset | 8 - .../ProjectSettings/ProjectSettings.asset | 205 ---- .../ProjectSettings/QualitySettings.asset | 135 --- .../ProjectSettings/TagManager.asset | 38 - .../ProjectSettings/TimeManager.asset | 8 - 114 files changed, 6855 deletions(-) delete mode 100644 clients/unity/.gitignore delete mode 100644 clients/unity/simple_sample/.gitignore delete mode 100644 clients/unity/simple_sample/Assets/ArenaMode.png delete mode 100644 clients/unity/simple_sample/Assets/ArenaMode.png.meta delete mode 100644 clients/unity/simple_sample/Assets/Bad.mat delete mode 100644 clients/unity/simple_sample/Assets/Bad.mat.meta delete mode 100644 clients/unity/simple_sample/Assets/DFHack.meta delete mode 100644 clients/unity/simple_sample/Assets/DFHack/isoworldremote.pb.cs delete mode 100644 clients/unity/simple_sample/Assets/DFHack/isoworldremote.pb.cs.meta delete mode 100644 clients/unity/simple_sample/Assets/Editor.meta delete mode 100644 clients/unity/simple_sample/Assets/Editor/MapBlockEditor.cs delete mode 100644 clients/unity/simple_sample/Assets/Editor/MapBlockEditor.cs.meta delete mode 100644 clients/unity/simple_sample/Assets/GameWindow.cs delete mode 100644 clients/unity/simple_sample/Assets/GameWindow.cs.meta delete mode 100644 clients/unity/simple_sample/Assets/HUDFPS.cs delete mode 100644 clients/unity/simple_sample/Assets/HUDFPS.cs.meta delete mode 100644 clients/unity/simple_sample/Assets/MapGen.meta delete mode 100644 clients/unity/simple_sample/Assets/MapGen/GameMap.cs delete mode 100644 clients/unity/simple_sample/Assets/MapGen/GameMap.cs.meta delete mode 100644 clients/unity/simple_sample/Assets/MapGen/MapBlock.cs delete mode 100644 clients/unity/simple_sample/Assets/MapGen/MapBlock.cs.meta delete mode 100644 clients/unity/simple_sample/Assets/RemoteClient.meta delete mode 100644 clients/unity/simple_sample/Assets/RemoteClient/Basic.cs delete mode 100644 clients/unity/simple_sample/Assets/RemoteClient/Basic.cs.meta delete mode 100644 clients/unity/simple_sample/Assets/RemoteClient/BasicApi.cs delete mode 100644 clients/unity/simple_sample/Assets/RemoteClient/BasicApi.cs.meta delete mode 100644 clients/unity/simple_sample/Assets/RemoteClient/ColorText.cs delete mode 100644 clients/unity/simple_sample/Assets/RemoteClient/ColorText.cs.meta delete mode 100644 clients/unity/simple_sample/Assets/RemoteClient/CoreProtocol.cs delete mode 100644 clients/unity/simple_sample/Assets/RemoteClient/CoreProtocol.cs.meta delete mode 100644 clients/unity/simple_sample/Assets/RemoteClient/RemoteClient.cs delete mode 100644 clients/unity/simple_sample/Assets/RemoteClient/RemoteClient.cs.meta delete mode 100644 clients/unity/simple_sample/Assets/RemoteClient/Tools.cs delete mode 100644 clients/unity/simple_sample/Assets/RemoteClient/Tools.cs.meta delete mode 100644 clients/unity/simple_sample/Assets/Start.unity delete mode 100644 clients/unity/simple_sample/Assets/Start.unity.meta delete mode 100644 clients/unity/simple_sample/Assets/TestScript.cs delete mode 100644 clients/unity/simple_sample/Assets/TestScript.cs.meta delete mode 100644 clients/unity/simple_sample/Assets/UV Test.mat delete mode 100644 clients/unity/simple_sample/Assets/UV Test.mat.meta delete mode 100644 clients/unity/simple_sample/Assets/UVTest.png delete mode 100644 clients/unity/simple_sample/Assets/UVTest.png.meta delete mode 100644 clients/unity/simple_sample/Assets/VertexColor.shader delete mode 100644 clients/unity/simple_sample/Assets/VertexColor.shader.meta delete mode 100644 clients/unity/simple_sample/Assets/grid.png delete mode 100644 clients/unity/simple_sample/Assets/grid.png.meta delete mode 100644 clients/unity/simple_sample/Assets/protobuf-net.dll delete mode 100644 clients/unity/simple_sample/Assets/protobuf-net.dll.meta delete mode 100644 clients/unity/simple_sample/Library/.gitignore delete mode 100644 clients/unity/simple_sample/Library/AnnotationManager delete mode 100644 clients/unity/simple_sample/Library/AssetImportState delete mode 100644 clients/unity/simple_sample/Library/AssetServerCacheV3 delete mode 100644 clients/unity/simple_sample/Library/AssetVersioning.db delete mode 100644 clients/unity/simple_sample/Library/BuildPlayer.prefs delete mode 100644 clients/unity/simple_sample/Library/BuildSettings.asset delete mode 100644 clients/unity/simple_sample/Library/EditorUserBuildSettings.asset delete mode 100644 clients/unity/simple_sample/Library/EditorUserSettings.asset delete mode 100644 clients/unity/simple_sample/Library/InspectorExpandedItems.asset delete mode 100644 clients/unity/simple_sample/Library/MonoManager.asset delete mode 100644 clients/unity/simple_sample/Library/ProjectSettings.asset delete mode 100644 clients/unity/simple_sample/Library/ScriptMapper delete mode 100644 clients/unity/simple_sample/Library/assetDatabase3 delete mode 100644 clients/unity/simple_sample/Library/guidmapper delete mode 100644 clients/unity/simple_sample/Library/metadata/00/00000000000000001000000000000000 delete mode 100644 clients/unity/simple_sample/Library/metadata/00/00000000000000002000000000000000 delete mode 100644 clients/unity/simple_sample/Library/metadata/00/00000000000000003000000000000000 delete mode 100644 clients/unity/simple_sample/Library/metadata/00/00000000000000004000000000000000 delete mode 100644 clients/unity/simple_sample/Library/metadata/00/00000000000000004100000000000000 delete mode 100644 clients/unity/simple_sample/Library/metadata/00/00000000000000005000000000000000 delete mode 100644 clients/unity/simple_sample/Library/metadata/00/00000000000000006000000000000000 delete mode 100644 clients/unity/simple_sample/Library/metadata/00/00000000000000006100000000000000 delete mode 100644 clients/unity/simple_sample/Library/metadata/00/00000000000000007000000000000000 delete mode 100644 clients/unity/simple_sample/Library/metadata/00/00000000000000008000000000000000 delete mode 100644 clients/unity/simple_sample/Library/metadata/00/00000000000000009000000000000000 delete mode 100644 clients/unity/simple_sample/Library/metadata/00/0000000000000000a000000000000000 delete mode 100644 clients/unity/simple_sample/Library/metadata/00/0000000000000000b000000000000000 delete mode 100644 clients/unity/simple_sample/Library/metadata/00/0000000000000000c000000000000000 delete mode 100644 clients/unity/simple_sample/Library/metadata/26/2678d7ad7ff72d248854d487d8f15c21 delete mode 100644 clients/unity/simple_sample/Library/metadata/2f/2fb12edbd5d56cb4c99ccf773df52492 delete mode 100644 clients/unity/simple_sample/Library/metadata/36/364a32494f42e934bae30ff47badc45a delete mode 100644 clients/unity/simple_sample/Library/metadata/49/49176d7675a998345966feca21555311 delete mode 100644 clients/unity/simple_sample/Library/metadata/6e/6e1305e96d61f204f8229e0a0cb7f8c1 delete mode 100644 clients/unity/simple_sample/Library/metadata/73/73b3c5754a89e43409dcf23866eb0484 delete mode 100644 clients/unity/simple_sample/Library/metadata/84/8401f7b1211481b469ac746534a896b8 delete mode 100644 clients/unity/simple_sample/Library/metadata/89/8946b1d409fcda6499e46ca0fd310b73 delete mode 100644 clients/unity/simple_sample/Library/metadata/89/89b0f8fea628a544a9855c108fbe35dc delete mode 100644 clients/unity/simple_sample/Library/metadata/8d/8d11b6dacbf85e24ead2e95cafce40fd delete mode 100644 clients/unity/simple_sample/Library/metadata/9f/9fd804cbd377fd445805d7e5eea47877 delete mode 100644 clients/unity/simple_sample/Library/metadata/aa/aa92a0e1eefe93b40bec1e868142e050 delete mode 100644 clients/unity/simple_sample/Library/metadata/ab/ab257b5c0c7259943a5b614e3dde558e delete mode 100644 clients/unity/simple_sample/Library/metadata/b5/b54fa8be8a38a9f4e8f53b4399135e30 delete mode 100644 clients/unity/simple_sample/Library/metadata/c7/c7e34aa4b4a41d1478337506ce720e18 delete mode 100644 clients/unity/simple_sample/Library/metadata/d4/d420514133a0fbd4990025b3e1dac764 delete mode 100644 clients/unity/simple_sample/Library/metadata/d8/d8595cea157337845be980bcc8978623 delete mode 100644 clients/unity/simple_sample/Library/metadata/e4/e4195866782d0214cb59abbae44f068f delete mode 100644 clients/unity/simple_sample/Library/metadata/e8/e85d437f881938247992e492006de2df delete mode 100644 clients/unity/simple_sample/Library/metadata/eb/eb0b853da2a60f540a81dc515bab1875 delete mode 100644 clients/unity/simple_sample/Library/metadata/f9/f9efc5e870ab48243b2f508f00b7a740 delete mode 100644 clients/unity/simple_sample/Library/metadata/fc/fcc33854b846d0e4aa14f8afb74e173b delete mode 100644 clients/unity/simple_sample/Library/metadata/fd/fd22bd16464e8784cbd88809cdc697a3 delete mode 100644 clients/unity/simple_sample/Library/metadata/ff/ff990239cc3bc4a45a362f932463d378 delete mode 100644 clients/unity/simple_sample/Library/metadata/ff/ffba25341839373409b0cd511e9b1761 delete mode 100644 clients/unity/simple_sample/ProjectSettings/AudioManager.asset delete mode 100644 clients/unity/simple_sample/ProjectSettings/DynamicsManager.asset delete mode 100644 clients/unity/simple_sample/ProjectSettings/EditorBuildSettings.asset delete mode 100644 clients/unity/simple_sample/ProjectSettings/EditorSettings.asset delete mode 100644 clients/unity/simple_sample/ProjectSettings/GraphicsSettings.asset delete mode 100644 clients/unity/simple_sample/ProjectSettings/InputManager.asset delete mode 100644 clients/unity/simple_sample/ProjectSettings/NavMeshLayers.asset delete mode 100644 clients/unity/simple_sample/ProjectSettings/NetworkManager.asset delete mode 100644 clients/unity/simple_sample/ProjectSettings/ProjectSettings.asset delete mode 100644 clients/unity/simple_sample/ProjectSettings/QualitySettings.asset delete mode 100644 clients/unity/simple_sample/ProjectSettings/TagManager.asset delete mode 100644 clients/unity/simple_sample/ProjectSettings/TimeManager.asset diff --git a/clients/unity/.gitignore b/clients/unity/.gitignore deleted file mode 100644 index d784f4250..000000000 --- a/clients/unity/.gitignore +++ /dev/null @@ -1,11 +0,0 @@ -[Oo]bj -[Bb]in -*.user -*.suo -*.[Cc]ache -*.bak -*.ncb -*.log -*.DS_Store -[Tt]humbs.db -Ankh.NoLoad diff --git a/clients/unity/simple_sample/.gitignore b/clients/unity/simple_sample/.gitignore deleted file mode 100644 index 6ea3f8947..000000000 --- a/clients/unity/simple_sample/.gitignore +++ /dev/null @@ -1,12 +0,0 @@ -*.sln -*.userprefs -*.csproj -*.pidb -*.unityproj -.DS_Store -/Library/FailedAssetImports.txt -/Library/cache/ -/Library/previews/ -/Library/ScriptAssemblies -/obj -/Temp \ No newline at end of file diff --git a/clients/unity/simple_sample/Assets/ArenaMode.png b/clients/unity/simple_sample/Assets/ArenaMode.png deleted file mode 100644 index 57f5651c21efada4c4b0aca35663e26d0aea6441..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 23372 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 diff --git a/clients/unity/simple_sample/Assets/ArenaMode.png.meta b/clients/unity/simple_sample/Assets/ArenaMode.png.meta deleted file mode 100644 index 14108e0a7..000000000 --- a/clients/unity/simple_sample/Assets/ArenaMode.png.meta +++ /dev/null @@ -1,36 +0,0 @@ -fileFormatVersion: 2 -guid: 89b0f8fea628a544a9855c108fbe35dc -TextureImporter: - serializedVersion: 2 - mipmaps: - mipMapMode: 0 - enableMipMap: 1 - linearTexture: 0 - correctGamma: 0 - fadeOut: 0 - borderMipMap: 0 - mipMapFadeDistanceStart: 1 - mipMapFadeDistanceEnd: 3 - bumpmap: - convertToNormalMap: 0 - externalNormalMap: 0 - heightScale: .25 - normalMapFilter: 0 - isReadable: 0 - grayScaleToAlpha: 0 - generateCubemap: 0 - seamlessCubemap: 0 - textureFormat: -1 - maxTextureSize: 1024 - textureSettings: - filterMode: -1 - aniso: -1 - mipBias: -1 - wrapMode: -1 - nPOTScale: 1 - lightmap: 0 - compressionQuality: 50 - alphaIsTransparency: 0 - textureType: -1 - buildTargetSettings: [] - userData: diff --git a/clients/unity/simple_sample/Assets/Bad.mat b/clients/unity/simple_sample/Assets/Bad.mat deleted file mode 100644 index 33b8991c8..000000000 --- a/clients/unity/simple_sample/Assets/Bad.mat +++ /dev/null @@ -1,27 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!21 &2100000 -Material: - serializedVersion: 3 - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_Name: Bad - m_Shader: {fileID: 7, guid: 0000000000000000f000000000000000, type: 0} - m_ShaderKeywords: [] - m_SavedProperties: - serializedVersion: 2 - m_TexEnvs: - data: - first: - name: _MainTex - second: - m_Texture: {fileID: 0} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - m_Floats: {} - m_Colors: - data: - first: - name: _Color - second: {r: 1, g: 0, b: 0, a: 1} diff --git a/clients/unity/simple_sample/Assets/Bad.mat.meta b/clients/unity/simple_sample/Assets/Bad.mat.meta deleted file mode 100644 index 2cb7b3f0b..000000000 --- a/clients/unity/simple_sample/Assets/Bad.mat.meta +++ /dev/null @@ -1,4 +0,0 @@ -fileFormatVersion: 2 -guid: 9fd804cbd377fd445805d7e5eea47877 -NativeFormatImporter: - userData: diff --git a/clients/unity/simple_sample/Assets/DFHack.meta b/clients/unity/simple_sample/Assets/DFHack.meta deleted file mode 100644 index 283b60fb8..000000000 --- a/clients/unity/simple_sample/Assets/DFHack.meta +++ /dev/null @@ -1,5 +0,0 @@ -fileFormatVersion: 2 -guid: fd22bd16464e8784cbd88809cdc697a3 -folderAsset: yes -DefaultImporter: - userData: diff --git a/clients/unity/simple_sample/Assets/DFHack/isoworldremote.pb.cs b/clients/unity/simple_sample/Assets/DFHack/isoworldremote.pb.cs deleted file mode 100644 index 95ef929f9..000000000 --- a/clients/unity/simple_sample/Assets/DFHack/isoworldremote.pb.cs +++ /dev/null @@ -1,356 +0,0 @@ -//------------------------------------------------------------------------------ -// -// This code was generated by a tool. -// -// Changes to this file may cause incorrect behavior and will be lost if -// the code is regenerated. -// -//------------------------------------------------------------------------------ - -// Generated from: isoworldremote.proto -namespace isoworldremote -{ - [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"ColorDefinition")] - public partial class ColorDefinition : global::ProtoBuf.IExtensible - { - public ColorDefinition() {} - - private int _red; - [global::ProtoBuf.ProtoMember(1, IsRequired = true, Name=@"red", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - public int red - { - get { return _red; } - set { _red = value; } - } - private int _green; - [global::ProtoBuf.ProtoMember(2, IsRequired = true, Name=@"green", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - public int green - { - get { return _green; } - set { _green = value; } - } - private int _blue; - [global::ProtoBuf.ProtoMember(3, IsRequired = true, Name=@"blue", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - public int blue - { - get { return _blue; } - set { _blue = value; } - } - private global::ProtoBuf.IExtension extensionObject; - global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) - { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } - } - - [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"EmbarkTileLayer")] - public partial class EmbarkTileLayer : global::ProtoBuf.IExtensible - { - public EmbarkTileLayer() {} - - private readonly global::System.Collections.Generic.List _mat_type_table = new global::System.Collections.Generic.List(); - [global::ProtoBuf.ProtoMember(4, Name=@"mat_type_table", DataFormat = global::ProtoBuf.DataFormat.TwosComplement, Options = global::ProtoBuf.MemberSerializationOptions.Packed)] - public global::System.Collections.Generic.List mat_type_table - { - get { return _mat_type_table; } - } - - private readonly global::System.Collections.Generic.List _mat_subtype_table = new global::System.Collections.Generic.List(); - [global::ProtoBuf.ProtoMember(5, Name=@"mat_subtype_table", DataFormat = global::ProtoBuf.DataFormat.TwosComplement, Options = global::ProtoBuf.MemberSerializationOptions.Packed)] - public global::System.Collections.Generic.List mat_subtype_table - { - get { return _mat_subtype_table; } - } - - private readonly global::System.Collections.Generic.List _tile_shape_table = new global::System.Collections.Generic.List(); - [global::ProtoBuf.ProtoMember(6, Name=@"tile_shape_table", DataFormat = global::ProtoBuf.DataFormat.TwosComplement, Options = global::ProtoBuf.MemberSerializationOptions.Packed)] - public global::System.Collections.Generic.List tile_shape_table - { - get { return _tile_shape_table; } - } - - private readonly global::System.Collections.Generic.List _tile_color_table = new global::System.Collections.Generic.List(); - [global::ProtoBuf.ProtoMember(7, Name=@"tile_color_table", DataFormat = global::ProtoBuf.DataFormat.Default)] - public global::System.Collections.Generic.List tile_color_table - { - get { return _tile_color_table; } - } - - private global::ProtoBuf.IExtension extensionObject; - global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) - { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } - } - - [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"EmbarkTile")] - public partial class EmbarkTile : global::ProtoBuf.IExtensible - { - public EmbarkTile() {} - - private int _world_x; - [global::ProtoBuf.ProtoMember(1, IsRequired = true, Name=@"world_x", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - public int world_x - { - get { return _world_x; } - set { _world_x = value; } - } - private int _world_y; - [global::ProtoBuf.ProtoMember(2, IsRequired = true, Name=@"world_y", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - public int world_y - { - get { return _world_y; } - set { _world_y = value; } - } - private int _world_z; - [global::ProtoBuf.ProtoMember(3, IsRequired = true, Name=@"world_z", DataFormat = global::ProtoBuf.DataFormat.ZigZag)] - public int world_z - { - get { return _world_z; } - set { _world_z = value; } - } - private readonly global::System.Collections.Generic.List _tile_layer = new global::System.Collections.Generic.List(); - [global::ProtoBuf.ProtoMember(4, Name=@"tile_layer", DataFormat = global::ProtoBuf.DataFormat.Default)] - public global::System.Collections.Generic.List tile_layer - { - get { return _tile_layer; } - } - - - private int _current_year = default(int); - [global::ProtoBuf.ProtoMember(5, IsRequired = false, Name=@"current_year", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - [global::System.ComponentModel.DefaultValue(default(int))] - public int current_year - { - get { return _current_year; } - set { _current_year = value; } - } - - private int _current_season = default(int); - [global::ProtoBuf.ProtoMember(6, IsRequired = false, Name=@"current_season", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - [global::System.ComponentModel.DefaultValue(default(int))] - public int current_season - { - get { return _current_season; } - set { _current_season = value; } - } - - private bool _is_valid = default(bool); - [global::ProtoBuf.ProtoMember(7, IsRequired = false, Name=@"is_valid", DataFormat = global::ProtoBuf.DataFormat.Default)] - [global::System.ComponentModel.DefaultValue(default(bool))] - public bool is_valid - { - get { return _is_valid; } - set { _is_valid = value; } - } - private global::ProtoBuf.IExtension extensionObject; - global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) - { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } - } - - [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"TileRequest")] - public partial class TileRequest : global::ProtoBuf.IExtensible - { - public TileRequest() {} - - - private int _want_x = default(int); - [global::ProtoBuf.ProtoMember(1, IsRequired = false, Name=@"want_x", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - [global::System.ComponentModel.DefaultValue(default(int))] - public int want_x - { - get { return _want_x; } - set { _want_x = value; } - } - - private int _want_y = default(int); - [global::ProtoBuf.ProtoMember(2, IsRequired = false, Name=@"want_y", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - [global::System.ComponentModel.DefaultValue(default(int))] - public int want_y - { - get { return _want_y; } - set { _want_y = value; } - } - private global::ProtoBuf.IExtension extensionObject; - global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) - { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } - } - - [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"MapRequest")] - public partial class MapRequest : global::ProtoBuf.IExtensible - { - public MapRequest() {} - - - private string _save_folder = ""; - [global::ProtoBuf.ProtoMember(1, IsRequired = false, Name=@"save_folder", DataFormat = global::ProtoBuf.DataFormat.Default)] - [global::System.ComponentModel.DefaultValue("")] - public string save_folder - { - get { return _save_folder; } - set { _save_folder = value; } - } - private global::ProtoBuf.IExtension extensionObject; - global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) - { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } - } - - [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"MapReply")] - public partial class MapReply : global::ProtoBuf.IExtensible - { - public MapReply() {} - - private bool _available; - [global::ProtoBuf.ProtoMember(1, IsRequired = true, Name=@"available", DataFormat = global::ProtoBuf.DataFormat.Default)] - public bool available - { - get { return _available; } - set { _available = value; } - } - - private int _region_x = default(int); - [global::ProtoBuf.ProtoMember(2, IsRequired = false, Name=@"region_x", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - [global::System.ComponentModel.DefaultValue(default(int))] - public int region_x - { - get { return _region_x; } - set { _region_x = value; } - } - - private int _region_y = default(int); - [global::ProtoBuf.ProtoMember(3, IsRequired = false, Name=@"region_y", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - [global::System.ComponentModel.DefaultValue(default(int))] - public int region_y - { - get { return _region_y; } - set { _region_y = value; } - } - - private int _region_size_x = default(int); - [global::ProtoBuf.ProtoMember(4, IsRequired = false, Name=@"region_size_x", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - [global::System.ComponentModel.DefaultValue(default(int))] - public int region_size_x - { - get { return _region_size_x; } - set { _region_size_x = value; } - } - - private int _region_size_y = default(int); - [global::ProtoBuf.ProtoMember(5, IsRequired = false, Name=@"region_size_y", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - [global::System.ComponentModel.DefaultValue(default(int))] - public int region_size_y - { - get { return _region_size_y; } - set { _region_size_y = value; } - } - - private int _current_year = default(int); - [global::ProtoBuf.ProtoMember(6, IsRequired = false, Name=@"current_year", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - [global::System.ComponentModel.DefaultValue(default(int))] - public int current_year - { - get { return _current_year; } - set { _current_year = value; } - } - - private int _current_season = default(int); - [global::ProtoBuf.ProtoMember(7, IsRequired = false, Name=@"current_season", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - [global::System.ComponentModel.DefaultValue(default(int))] - public int current_season - { - get { return _current_season; } - set { _current_season = value; } - } - private global::ProtoBuf.IExtension extensionObject; - global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) - { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } - } - - [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"RawNames")] - public partial class RawNames : global::ProtoBuf.IExtensible - { - public RawNames() {} - - private bool _available; - [global::ProtoBuf.ProtoMember(1, IsRequired = true, Name=@"available", DataFormat = global::ProtoBuf.DataFormat.Default)] - public bool available - { - get { return _available; } - set { _available = value; } - } - private readonly global::System.Collections.Generic.List _inorganic = new global::System.Collections.Generic.List(); - [global::ProtoBuf.ProtoMember(2, Name=@"inorganic", DataFormat = global::ProtoBuf.DataFormat.Default)] - public global::System.Collections.Generic.List inorganic - { - get { return _inorganic; } - } - - private readonly global::System.Collections.Generic.List _organic = new global::System.Collections.Generic.List(); - [global::ProtoBuf.ProtoMember(3, Name=@"organic", DataFormat = global::ProtoBuf.DataFormat.Default)] - public global::System.Collections.Generic.List organic - { - get { return _organic; } - } - - private global::ProtoBuf.IExtension extensionObject; - global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) - { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } - } - - [global::ProtoBuf.ProtoContract(Name=@"BasicMaterial")] - public enum BasicMaterial - { - - [global::ProtoBuf.ProtoEnum(Name=@"AIR", Value=0)] - AIR = 0, - - [global::ProtoBuf.ProtoEnum(Name=@"OTHER", Value=1)] - OTHER = 1, - - [global::ProtoBuf.ProtoEnum(Name=@"INORGANIC", Value=2)] - INORGANIC = 2, - - [global::ProtoBuf.ProtoEnum(Name=@"LIQUID", Value=3)] - LIQUID = 3, - - [global::ProtoBuf.ProtoEnum(Name=@"PLANT", Value=4)] - PLANT = 4, - - [global::ProtoBuf.ProtoEnum(Name=@"WOOD", Value=5)] - WOOD = 5 - } - - [global::ProtoBuf.ProtoContract(Name=@"LiquidType")] - public enum LiquidType - { - - [global::ProtoBuf.ProtoEnum(Name=@"ICE", Value=0)] - ICE = 0, - - [global::ProtoBuf.ProtoEnum(Name=@"WATER", Value=1)] - WATER = 1, - - [global::ProtoBuf.ProtoEnum(Name=@"MAGMA", Value=2)] - MAGMA = 2 - } - - [global::ProtoBuf.ProtoContract(Name=@"BasicShape")] - public enum BasicShape - { - - [global::ProtoBuf.ProtoEnum(Name=@"NONE", Value=0)] - NONE = 0, - - [global::ProtoBuf.ProtoEnum(Name=@"OPEN", Value=1)] - OPEN = 1, - - [global::ProtoBuf.ProtoEnum(Name=@"WALL", Value=3)] - WALL = 3, - - [global::ProtoBuf.ProtoEnum(Name=@"FLOOR", Value=4)] - FLOOR = 4, - - [global::ProtoBuf.ProtoEnum(Name=@"RAMP_UP", Value=5)] - RAMP_UP = 5, - - [global::ProtoBuf.ProtoEnum(Name=@"RAMP_DOWN", Value=6)] - RAMP_DOWN = 6 - } - -} \ No newline at end of file diff --git a/clients/unity/simple_sample/Assets/DFHack/isoworldremote.pb.cs.meta b/clients/unity/simple_sample/Assets/DFHack/isoworldremote.pb.cs.meta deleted file mode 100644 index 24cdda335..000000000 --- a/clients/unity/simple_sample/Assets/DFHack/isoworldremote.pb.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 49176d7675a998345966feca21555311 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/clients/unity/simple_sample/Assets/Editor.meta b/clients/unity/simple_sample/Assets/Editor.meta deleted file mode 100644 index 359b7c636..000000000 --- a/clients/unity/simple_sample/Assets/Editor.meta +++ /dev/null @@ -1,5 +0,0 @@ -fileFormatVersion: 2 -guid: f9efc5e870ab48243b2f508f00b7a740 -folderAsset: yes -DefaultImporter: - userData: diff --git a/clients/unity/simple_sample/Assets/Editor/MapBlockEditor.cs b/clients/unity/simple_sample/Assets/Editor/MapBlockEditor.cs deleted file mode 100644 index db9a093df..000000000 --- a/clients/unity/simple_sample/Assets/Editor/MapBlockEditor.cs +++ /dev/null @@ -1,110 +0,0 @@ -using isoworldremote; -using UnityEditor; -using UnityEngine; -using System; - -[CustomEditor(typeof(MapBlock))] -[CanEditMultipleObjects] -public class MapBlockEditor : Editor -{ - static Color32 selectedColor = Color.white; - static BasicShape selectedShape = BasicShape.WALL; - - public override void OnInspectorGUI() - { - MapBlock[] targetBlocks = Array.ConvertAll(targets, element => (MapBlock)element); - if(targets.Length == 1) - EditorGUILayout.LabelField(targets.Length + " Map Block selected."); - else - EditorGUILayout.LabelField(targets.Length + " Map Blocks selected."); - - selectedColor = EditorGUILayout.ColorField("Material Color", selectedColor); - selectedShape = (BasicShape)EditorGUILayout.EnumPopup("Terrain Shape ", selectedShape); - EditorGUILayout.BeginVertical(); - DFHack.DFCoord2d tempCoord = new DFHack.DFCoord2d(); - for (int i = 0; i < 16; i++) - { - EditorGUILayout.BeginHorizontal(); - for (int j = 0; j < 16; j++) - { - tempCoord.x = j; - tempCoord.y = i; - Color currentColor = targetBlocks[0].GetColor(tempCoord); - for (int index = 1; index < targetBlocks.Length; index++) - { - if (currentColor != targetBlocks[index].GetColor(tempCoord)) - { - currentColor = Color.white; - break; - } - } - currentColor.a = 1.0f; - GUI.color = currentColor; - string buttonIcon = "\u00A0"; - BasicShape tile = targetBlocks[0].GetSingleTile(tempCoord); - for (int index = 1; index < targetBlocks.Length; index++) - { - if (tile != targetBlocks[index].GetSingleTile(tempCoord)) - { - tile = BasicShape.NONE; - break; - } - - } - switch (tile) - { - case BasicShape.WALL: - buttonIcon = "â–“"; - break; - case BasicShape.FLOOR: - buttonIcon = "+"; - break; - case BasicShape.NONE: - buttonIcon = "?"; - break; - case BasicShape.OPEN: - buttonIcon = "\u00A0"; - break; - case BasicShape.RAMP_UP: - buttonIcon = "â–²"; - break; - case BasicShape.RAMP_DOWN: - buttonIcon = "â–¼"; - break; - default: - buttonIcon = "?"; - break; - } - if (GUILayout.Button(buttonIcon)) - { - for (int index = 0; index < targetBlocks.Length; index++) - { - targetBlocks[index].SetSingleTile(tempCoord, selectedShape); - targetBlocks[index].SetColor(tempCoord, selectedColor); - targetBlocks[index].Regenerate(); - EditorUtility.SetDirty(targetBlocks[index]); - } - } - } - EditorGUILayout.EndHorizontal(); - } - EditorGUILayout.EndVertical(); - GUI.color = Color.white; - if (GUILayout.Button("Fill")) - { - for (int index = 0; index < targetBlocks.Length; index++) - { - for (int i = 0; i < 16; i++) - for (int j = 0; j < 16; j++) - { - DFHack.DFCoord2d here = new DFHack.DFCoord2d(j, i); - targetBlocks[index].SetSingleTile(here, selectedShape); - targetBlocks[index].SetColor(here, selectedColor); - - } - targetBlocks[index].Regenerate(); - EditorUtility.SetDirty(targetBlocks[index]); - } - } - } -} diff --git a/clients/unity/simple_sample/Assets/Editor/MapBlockEditor.cs.meta b/clients/unity/simple_sample/Assets/Editor/MapBlockEditor.cs.meta deleted file mode 100644 index 7e14634d7..000000000 --- a/clients/unity/simple_sample/Assets/Editor/MapBlockEditor.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 6e1305e96d61f204f8229e0a0cb7f8c1 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/clients/unity/simple_sample/Assets/GameWindow.cs b/clients/unity/simple_sample/Assets/GameWindow.cs deleted file mode 100644 index a886ea36d..000000000 --- a/clients/unity/simple_sample/Assets/GameWindow.cs +++ /dev/null @@ -1,57 +0,0 @@ -using UnityEngine; -using System.Collections; - -public class GameWindow : MonoBehaviour -{ - public int viewPortWidth = 80; - public int viewPortHeight = 25; - public float verticalShift; - public float viewDistance = 5; - float n, f, r, l, t, b; - Matrix4x4 mat = new Matrix4x4(); - // Use this for initialization - void Start() - { - - } - - // Update is called once per frame - void Update() - { - float screenAspect = (float)Screen.width / (float)Screen.height; - float viewportAspect = (float)viewPortWidth / (float)viewPortHeight; - - float fraction = screenAspect / viewportAspect; - - float height = (viewPortHeight / 2.0f) / Mathf.Sin((camera.fieldOfView / 2) * Mathf.Deg2Rad); - transform.localPosition = new Vector3(0, height, -verticalShift); - - camera.nearClipPlane = height - 1.0001f; - camera.farClipPlane = height + viewDistance; - RenderSettings.fogStartDistance = camera.nearClipPlane; - RenderSettings.fogEndDistance = camera.farClipPlane; - if (fraction > 1.0f) //If the screen is wider than the DF Viewport - { - camera.rect = new Rect(0.5f - ((1.0f / fraction) / 2.0f), 0.0f, 1.0f / fraction, 1.0f); - } - else //If the DF Viewport is wider. - { - camera.rect = new Rect(0.0f, 0.5f - (fraction / 2.0f), 1.0f, fraction); - } - //make a custom camera matrix, rather than use the inbuilt one. - n = camera.nearClipPlane; - f = camera.farClipPlane; - r = viewPortWidth / 2.0f; - l = -viewPortWidth / 2.0f; - t = verticalShift + (viewPortHeight / 2.0f); - b = verticalShift - (viewPortHeight / 2.0f); - - - mat[0, 0] = 2 * n / (r - l); mat[1, 0] = 0; mat[2, 0] = 0; mat[3, 0] = 0; - mat[0, 1] = 0; mat[1, 1] = 2 * n / (t - b); mat[2, 1] = 0; mat[3, 1] = 0; - mat[0, 2] = (r + l) / (r - l); mat[1, 2] = (t + b) / (t - b); mat[2, 2] = -(f + n) / (f - n); mat[3, 2] = -1; - mat[0, 3] = 0; mat[1, 3] = 0; mat[2, 3] = -2 * f * n / (f - n); ; mat[3, 3] = 0; - - camera.projectionMatrix = mat; - } -} diff --git a/clients/unity/simple_sample/Assets/GameWindow.cs.meta b/clients/unity/simple_sample/Assets/GameWindow.cs.meta deleted file mode 100644 index cfc663b20..000000000 --- a/clients/unity/simple_sample/Assets/GameWindow.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: b54fa8be8a38a9f4e8f53b4399135e30 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/clients/unity/simple_sample/Assets/HUDFPS.cs b/clients/unity/simple_sample/Assets/HUDFPS.cs deleted file mode 100644 index 88fdd3755..000000000 --- a/clients/unity/simple_sample/Assets/HUDFPS.cs +++ /dev/null @@ -1,79 +0,0 @@ -using UnityEngine; -using System.Collections; - -[AddComponentMenu("Utilities/HUDFPS")] -public class HUDFPS : MonoBehaviour -{ - // Attach this to any object to make a frames/second indicator. - // - // It calculates frames/second over each updateInterval, - // so the display does not keep changing wildly. - // - // It is also fairly accurate at very low FPS counts (<10). - // We do this not by simply counting frames per interval, but - // by accumulating FPS for each frame. This way we end up with - // corstartRect overall FPS even if the interval renders something like - // 5.5 frames. - - public Rect startRect = new Rect(10, 10, 75, 50); // The rect the window is initially displayed at. - public bool updateColor = true; // Do you want the color to change if the FPS gets low - public bool allowDrag = true; // Do you want to allow the dragging of the FPS window - public float frequency = 0.5F; // The update frequency of the fps - public int nbDecimal = 1; // How many decimal do you want to display - - private float accum = 0f; // FPS accumulated over the interval - private int frames = 0; // Frames drawn over the interval - private Color color = Color.white; // The color of the GUI, depending of the FPS ( R < 10, Y < 30, G >= 30 ) - private string sFPS = ""; // The fps formatted into a string. - private GUIStyle style; // The style the text will be displayed at, based en defaultSkin.label. - - void Start() - { - StartCoroutine(FPS()); - } - - void Update() - { - accum += Time.timeScale / Time.deltaTime; - ++frames; - } - - IEnumerator FPS() - { - // Infinite loop executed every "frenquency" secondes. - while (true) - { - // Update the FPS - float fps = accum / frames; - sFPS = fps.ToString("f" + Mathf.Clamp(nbDecimal, 0, 10)); - - //Update the color - color = (fps >= 30) ? Color.green : ((fps > 10) ? Color.red : Color.yellow); - - accum = 0.0F; - frames = 0; - - yield return new WaitForSeconds(frequency); - } - } - - void OnGUI() - { - // Copy the default label skin, change the color and the alignement - if (style == null) - { - style = new GUIStyle(GUI.skin.label); - style.normal.textColor = Color.white; - style.alignment = TextAnchor.MiddleCenter; - } - - GUI.color = updateColor ? color : Color.white; - startRect = GUI.Window(0, startRect, DoMyWindow, ""); - } - - void DoMyWindow(int windowID) - { - GUI.Label(new Rect(0, 0, startRect.width, startRect.height), sFPS + " FPS", style); - if (allowDrag) GUI.DragWindow(new Rect(0, 0, Screen.width, Screen.height)); - } -} \ No newline at end of file diff --git a/clients/unity/simple_sample/Assets/HUDFPS.cs.meta b/clients/unity/simple_sample/Assets/HUDFPS.cs.meta deleted file mode 100644 index 8354414be..000000000 --- a/clients/unity/simple_sample/Assets/HUDFPS.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 2fb12edbd5d56cb4c99ccf773df52492 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/clients/unity/simple_sample/Assets/MapGen.meta b/clients/unity/simple_sample/Assets/MapGen.meta deleted file mode 100644 index 4978dd295..000000000 --- a/clients/unity/simple_sample/Assets/MapGen.meta +++ /dev/null @@ -1,5 +0,0 @@ -fileFormatVersion: 2 -guid: c7e34aa4b4a41d1478337506ce720e18 -folderAsset: yes -DefaultImporter: - userData: diff --git a/clients/unity/simple_sample/Assets/MapGen/GameMap.cs b/clients/unity/simple_sample/Assets/MapGen/GameMap.cs deleted file mode 100644 index 8f7bc1ffc..000000000 --- a/clients/unity/simple_sample/Assets/MapGen/GameMap.cs +++ /dev/null @@ -1,15 +0,0 @@ -using UnityEngine; -using System.Collections; - -public class GameMap : MonoBehaviour { - - // Use this for initialization - void Start () { - - } - - // Update is called once per frame - void Update () { - - } -} diff --git a/clients/unity/simple_sample/Assets/MapGen/GameMap.cs.meta b/clients/unity/simple_sample/Assets/MapGen/GameMap.cs.meta deleted file mode 100644 index 318ffd70a..000000000 --- a/clients/unity/simple_sample/Assets/MapGen/GameMap.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: aa92a0e1eefe93b40bec1e868142e050 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/clients/unity/simple_sample/Assets/MapGen/MapBlock.cs b/clients/unity/simple_sample/Assets/MapGen/MapBlock.cs deleted file mode 100644 index 489299fdc..000000000 --- a/clients/unity/simple_sample/Assets/MapGen/MapBlock.cs +++ /dev/null @@ -1,321 +0,0 @@ -using DFHack; -using System.Collections.Generic; -using UnityEngine; -using isoworldremote; - -public class MapBlock : MonoBehaviour -{ - public static float floorHeight = 0.1f; - public static float rampDistance = 2.0f; - DFCoord coordinates; - GameMap parent; - - [SerializeField] - BasicShape[] terrain = new BasicShape[256]; - [SerializeField] - Color32[] colors = new Color32[256]; - - List finalVertices = new List(); - List finalFaces = new List(); - List finalVertexColors = new List(); - List finalUVs = new List(); - - public enum Openness - { - air, - mixed, - stone - } - Openness openness; - - public void SetOpenness() - { - int air = 0; - int solid = 0; - for (int x = 0; x < 16; x++) - for (int y = 0; y < 16; y++) - { - if (terrain[y * 16 + x] == BasicShape.OPEN || terrain[y * 16 + x] == BasicShape.NONE) - air++; - else if (terrain[y * 16 + x] == BasicShape.WALL) - solid++; - } - if (air == 256) - openness = Openness.air; - else if (solid == 256) - openness = Openness.stone; - else openness = Openness.mixed; - } - - public Openness GetOpenness() - { - return openness; - } - - public Color32 GetColor(DFCoord2d position) - { - return colors[position.x + position.y * 16]; - } - - public void SetColor(DFCoord2d position, Color32 input) - { - colors[position.x + position.y * 16] = input; - } - - public void SetSingleTile(DFCoord2d position, BasicShape tile) - { - terrain[position.x + position.y * 16] = tile; - SetOpenness(); - } - - public BasicShape GetSingleTile(DFCoord2d position) - { - if (position.x >= 0 && position.x < 16 && position.y >= 0 && position.y < 16) - return terrain[position.x + position.y * 16]; - else - return BasicShape.NONE; - } - - public void Regenerate() - { - finalVertices.Clear(); - finalFaces.Clear(); - finalVertexColors.Clear(); - finalUVs.Clear(); - - if (openness == Openness.air) - { - } - else - { - for (int i = 0; i < 16; i++) - for (int j = 0; j < 16; j++) - { - DFCoord2d here = new DFCoord2d(i, j); - switch (GetSingleTile(here)) - { - case BasicShape.WALL: - AddTopFace(here, 1.0f); - break; - case BasicShape.FLOOR: - AddTopFace(here, floorHeight); - break; - } - AddSideFace(here, FaceDirection.North); - AddSideFace(here, FaceDirection.South); - AddSideFace(here, FaceDirection.East); - AddSideFace(here, FaceDirection.West); - } - } - MeshFilter mf = GetComponent(); - Mesh mesh = new Mesh(); - mf.mesh = mesh; - mesh.vertices = finalVertices.ToArray(); - mesh.uv = finalUVs.ToArray(); - mesh.colors32 = finalVertexColors.ToArray(); - mesh.triangles = finalFaces.ToArray(); - mesh.RecalculateBounds(); - mesh.RecalculateNormals(); - } - - enum FaceDirection - { - Up, - Down, - North, - South, - East, - West - } - - BasicShape GetRelativeTile(DFCoord2d position, FaceDirection direction) - { - DFCoord2d relativePosition = new DFCoord2d(position.x, position.y); - switch (direction) - { - case FaceDirection.North: - relativePosition.y--; - break; - case FaceDirection.South: - relativePosition.y++; - break; - case FaceDirection.East: - relativePosition.x++; - break; - case FaceDirection.West: - relativePosition.x--; - break; - } - return GetSingleTile(relativePosition); - } - - enum Layer - { - Base, - Floor, - Top - } - - float convertDistanceToOffset(float input) - { - if (input == float.MaxValue) - return 0; - input = Mathf.Pow(input, 0.5f); - input = (rampDistance - input) / rampDistance; - if (input < 0) - return 0; - return Mathf.Sin(input * Mathf.PI / 4.0f); - } - - Vector3 AdjustForRamps(Vector3 input, Layer layer = Layer.Floor) - { - float nearestUpRamp = float.MaxValue; - float nearestDownRamp = float.MaxValue; - for (int x = (int)(input.x - rampDistance); x < (int)(input.x + rampDistance + 1.0f); x++) - for (int y = (int)(-input.z - rampDistance); y < (int)(-input.z + rampDistance + 1.0f); y++) - { - BasicShape tile = GetSingleTile(new DFCoord2d(x, y)); - if(tile == BasicShape.RAMP_UP || tile == BasicShape.RAMP_DOWN) - { - float tempDistance = Mathf.Pow(input.x - x, 2) + Mathf.Pow(-input.z - y, 2); - if (tile == BasicShape.RAMP_DOWN && tempDistance < nearestDownRamp) - nearestDownRamp = tempDistance; - if (tile == BasicShape.RAMP_UP && tempDistance < nearestUpRamp) - nearestUpRamp = tempDistance; - } - } - - nearestUpRamp = convertDistanceToOffset(nearestUpRamp); - nearestDownRamp = convertDistanceToOffset(nearestDownRamp); - - if (layer == Layer.Floor) - input.y = input.y + nearestUpRamp - nearestDownRamp; - if (layer == Layer.Top) - input.y = input.y - nearestUpRamp; - - return input; - } - - void AddSideFace(DFCoord2d position, FaceDirection direction) - { - Layer topLayer = Layer.Top; - Layer bottomLayer = Layer.Base; - float currentFloorHeight = -0.5f; - float adjacentFloorHeight = -0.5f; - switch (GetSingleTile(position)) - { - case BasicShape.WALL: - currentFloorHeight = 0.5f; - topLayer = Layer.Top; - break; - case BasicShape.FLOOR: - currentFloorHeight = floorHeight - 0.5f; - topLayer = Layer.Floor; - break; - default: - break; - } - switch (GetRelativeTile(position, direction)) - { - case BasicShape.WALL: - adjacentFloorHeight = 0.5f; - bottomLayer = Layer.Top; - break; - case BasicShape.FLOOR: - adjacentFloorHeight = floorHeight - 0.5f; - bottomLayer = Layer.Floor; - break; - default: - break; - } - if (currentFloorHeight <= adjacentFloorHeight) - return; - int startindex = finalVertices.Count; - int uvPos = 0; - switch (direction) - { - case FaceDirection.North: - finalVertices.Add(AdjustForRamps(new Vector3(position.x + 0.5f, currentFloorHeight, -(position.y - 0.5f)), topLayer)); - finalVertices.Add(AdjustForRamps(new Vector3(position.x - 0.5f, currentFloorHeight, -(position.y - 0.5f)), topLayer)); - finalVertices.Add(AdjustForRamps(new Vector3(position.x + 0.5f, adjacentFloorHeight, -(position.y - 0.5f)), bottomLayer)); - finalVertices.Add(AdjustForRamps(new Vector3(position.x - 0.5f, adjacentFloorHeight, -(position.y - 0.5f)), bottomLayer)); - uvPos = position.x; - break; - case FaceDirection.South: - finalVertices.Add(AdjustForRamps(new Vector3(position.x - 0.5f, currentFloorHeight, -(position.y + 0.5f)), topLayer)); - finalVertices.Add(AdjustForRamps(new Vector3(position.x + 0.5f, currentFloorHeight, -(position.y + 0.5f)), topLayer)); - finalVertices.Add(AdjustForRamps(new Vector3(position.x - 0.5f, adjacentFloorHeight, -(position.y + 0.5f)), bottomLayer)); - finalVertices.Add(AdjustForRamps(new Vector3(position.x + 0.5f, adjacentFloorHeight, -(position.y + 0.5f)), bottomLayer)); - uvPos = 16 - position.x; - break; - case FaceDirection.East: - finalVertices.Add(AdjustForRamps(new Vector3(position.x + 0.5f, currentFloorHeight, -(position.y + 0.5f)), topLayer)); - finalVertices.Add(AdjustForRamps(new Vector3(position.x + 0.5f, currentFloorHeight, -(position.y - 0.5f)), topLayer)); - finalVertices.Add(AdjustForRamps(new Vector3(position.x + 0.5f, adjacentFloorHeight, -(position.y + 0.5f)), bottomLayer)); - finalVertices.Add(AdjustForRamps(new Vector3(position.x + 0.5f, adjacentFloorHeight, -(position.y - 0.5f)), bottomLayer)); - uvPos = position.y; - break; - case FaceDirection.West: - finalVertices.Add(AdjustForRamps(new Vector3(position.x - 0.5f, currentFloorHeight, -(position.y - 0.5f)), topLayer)); - finalVertices.Add(AdjustForRamps(new Vector3(position.x - 0.5f, currentFloorHeight, -(position.y + 0.5f)), topLayer)); - finalVertices.Add(AdjustForRamps(new Vector3(position.x - 0.5f, adjacentFloorHeight, -(position.y - 0.5f)), bottomLayer)); - finalVertices.Add(AdjustForRamps(new Vector3(position.x - 0.5f, adjacentFloorHeight, -(position.y + 0.5f)), bottomLayer)); - uvPos = 16 - position.y; - break; - default: - break; - } - finalUVs.Add(new Vector2(-(float)(uvPos + 1) / 16.0f, -(float)(0) / 16.0f)); - finalUVs.Add(new Vector2(-(float)(uvPos) / 16.0f, -(float)(0) / 16.0f)); - finalUVs.Add(new Vector2(-(float)(uvPos + 1) / 16.0f, -(float)(0 + 1) / 16.0f)); - finalUVs.Add(new Vector2(-(float)(uvPos) / 16.0f, -(float)(0 + 1) / 16.0f)); - - finalVertexColors.Add(GetColor(position)); - finalVertexColors.Add(GetColor(position)); - finalVertexColors.Add(GetColor(position)); - finalVertexColors.Add(GetColor(position)); - - finalFaces.Add(startindex); - finalFaces.Add(startindex + 1); - finalFaces.Add(startindex + 2); - - finalFaces.Add(startindex + 1); - finalFaces.Add(startindex + 3); - finalFaces.Add(startindex + 2); - } - - void AddTopFace(DFCoord2d position, float height) - { - Layer layer = Layer.Base; - if (GetSingleTile(position) == BasicShape.FLOOR) - layer = Layer.Floor; - else if (GetSingleTile(position) == BasicShape.WALL) - layer = Layer.Top; - height -= 0.5f; - //Todo: Weld vertices that should be welded - //On second though, not with vertex colors there. - int startindex = finalVertices.Count; - finalVertices.Add(AdjustForRamps(new Vector3(position.x - 0.5f, height, -(position.y - 0.5f)), layer)); - finalVertices.Add(AdjustForRamps(new Vector3(position.x + 0.5f, height, -(position.y - 0.5f)), layer)); - finalVertices.Add(AdjustForRamps(new Vector3(position.x - 0.5f, height, -(position.y + 0.5f)), layer)); - finalVertices.Add(AdjustForRamps(new Vector3(position.x + 0.5f, height, -(position.y + 0.5f)), layer)); - - finalUVs.Add(new Vector2((float)(position.x) / 16.0f, -(float)(position.y) / 16.0f)); - finalUVs.Add(new Vector2((float)(position.x + 1) / 16.0f, -(float)(position.y) / 16.0f)); - finalUVs.Add(new Vector2((float)(position.x) / 16.0f, -(float)(position.y + 1) / 16.0f)); - finalUVs.Add(new Vector2((float)(position.x + 1) / 16.0f, -(float)(position.y + 1) / 16.0f)); - - finalVertexColors.Add(GetColor(position)); - finalVertexColors.Add(GetColor(position)); - finalVertexColors.Add(GetColor(position)); - finalVertexColors.Add(GetColor(position)); - - finalFaces.Add(startindex); - finalFaces.Add(startindex + 1); - finalFaces.Add(startindex + 2); - - finalFaces.Add(startindex + 1); - finalFaces.Add(startindex + 3); - finalFaces.Add(startindex + 2); - } -} diff --git a/clients/unity/simple_sample/Assets/MapGen/MapBlock.cs.meta b/clients/unity/simple_sample/Assets/MapGen/MapBlock.cs.meta deleted file mode 100644 index d14ccadbb..000000000 --- a/clients/unity/simple_sample/Assets/MapGen/MapBlock.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 8d11b6dacbf85e24ead2e95cafce40fd -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/clients/unity/simple_sample/Assets/RemoteClient.meta b/clients/unity/simple_sample/Assets/RemoteClient.meta deleted file mode 100644 index c7abf0d2a..000000000 --- a/clients/unity/simple_sample/Assets/RemoteClient.meta +++ /dev/null @@ -1,5 +0,0 @@ -fileFormatVersion: 2 -guid: e4195866782d0214cb59abbae44f068f -folderAsset: yes -DefaultImporter: - userData: diff --git a/clients/unity/simple_sample/Assets/RemoteClient/Basic.cs b/clients/unity/simple_sample/Assets/RemoteClient/Basic.cs deleted file mode 100644 index 146df0232..000000000 --- a/clients/unity/simple_sample/Assets/RemoteClient/Basic.cs +++ /dev/null @@ -1,968 +0,0 @@ -//------------------------------------------------------------------------------ -// -// This code was generated by a tool. -// -// Changes to this file may cause incorrect behavior and will be lost if -// the code is regenerated. -// -//------------------------------------------------------------------------------ - -// Generated from: Basic.proto -namespace dfproto -{ - [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"EnumItemName")] - public partial class EnumItemName : global::ProtoBuf.IExtensible - { - public EnumItemName() {} - - private int _value; - [global::ProtoBuf.ProtoMember(1, IsRequired = true, Name=@"value", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - public int value - { - get { return _value; } - set { _value = value; } - } - - private string _name = ""; - [global::ProtoBuf.ProtoMember(2, IsRequired = false, Name=@"name", DataFormat = global::ProtoBuf.DataFormat.Default)] - [global::System.ComponentModel.DefaultValue("")] - public string name - { - get { return _name; } - set { _name = value; } - } - - private int _bit_size = (int)1; - [global::ProtoBuf.ProtoMember(3, IsRequired = false, Name=@"bit_size", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - [global::System.ComponentModel.DefaultValue((int)1)] - public int bit_size - { - get { return _bit_size; } - set { _bit_size = value; } - } - private global::ProtoBuf.IExtension extensionObject; - global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) - { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } - } - - [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"BasicMaterialId")] - public partial class BasicMaterialId : global::ProtoBuf.IExtensible - { - public BasicMaterialId() {} - - private int _type; - [global::ProtoBuf.ProtoMember(1, IsRequired = true, Name=@"type", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - public int type - { - get { return _type; } - set { _type = value; } - } - private int _index; - [global::ProtoBuf.ProtoMember(2, IsRequired = true, Name=@"index", DataFormat = global::ProtoBuf.DataFormat.ZigZag)] - public int index - { - get { return _index; } - set { _index = value; } - } - private global::ProtoBuf.IExtension extensionObject; - global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) - { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } - } - - [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"BasicMaterialInfo")] - public partial class BasicMaterialInfo : global::ProtoBuf.IExtensible - { - public BasicMaterialInfo() {} - - private int _type; - [global::ProtoBuf.ProtoMember(1, IsRequired = true, Name=@"type", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - public int type - { - get { return _type; } - set { _type = value; } - } - private int _index; - [global::ProtoBuf.ProtoMember(2, IsRequired = true, Name=@"index", DataFormat = global::ProtoBuf.DataFormat.ZigZag)] - public int index - { - get { return _index; } - set { _index = value; } - } - private string _token; - [global::ProtoBuf.ProtoMember(3, IsRequired = true, Name=@"token", DataFormat = global::ProtoBuf.DataFormat.Default)] - public string token - { - get { return _token; } - set { _token = value; } - } - private readonly global::System.Collections.Generic.List _flags = new global::System.Collections.Generic.List(); - [global::ProtoBuf.ProtoMember(4, Name=@"flags", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - public global::System.Collections.Generic.List flags - { - get { return _flags; } - } - - - private int _subtype = (int)-1; - [global::ProtoBuf.ProtoMember(5, IsRequired = false, Name=@"subtype", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - [global::System.ComponentModel.DefaultValue((int)-1)] - public int subtype - { - get { return _subtype; } - set { _subtype = value; } - } - - private int _creature_id = (int)-1; - [global::ProtoBuf.ProtoMember(6, IsRequired = false, Name=@"creature_id", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - [global::System.ComponentModel.DefaultValue((int)-1)] - public int creature_id - { - get { return _creature_id; } - set { _creature_id = value; } - } - - private int _plant_id = (int)-1; - [global::ProtoBuf.ProtoMember(7, IsRequired = false, Name=@"plant_id", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - [global::System.ComponentModel.DefaultValue((int)-1)] - public int plant_id - { - get { return _plant_id; } - set { _plant_id = value; } - } - - private int _histfig_id = (int)-1; - [global::ProtoBuf.ProtoMember(8, IsRequired = false, Name=@"histfig_id", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - [global::System.ComponentModel.DefaultValue((int)-1)] - public int histfig_id - { - get { return _histfig_id; } - set { _histfig_id = value; } - } - - private string _name_prefix = ""; - [global::ProtoBuf.ProtoMember(9, IsRequired = false, Name=@"name_prefix", DataFormat = global::ProtoBuf.DataFormat.Default)] - [global::System.ComponentModel.DefaultValue("")] - public string name_prefix - { - get { return _name_prefix; } - set { _name_prefix = value; } - } - private readonly global::System.Collections.Generic.List _state_color = new global::System.Collections.Generic.List(); - [global::ProtoBuf.ProtoMember(10, Name=@"state_color", DataFormat = global::ProtoBuf.DataFormat.FixedSize)] - public global::System.Collections.Generic.List state_color - { - get { return _state_color; } - } - - private readonly global::System.Collections.Generic.List _state_name = new global::System.Collections.Generic.List(); - [global::ProtoBuf.ProtoMember(11, Name=@"state_name", DataFormat = global::ProtoBuf.DataFormat.Default)] - public global::System.Collections.Generic.List state_name - { - get { return _state_name; } - } - - private readonly global::System.Collections.Generic.List _state_adj = new global::System.Collections.Generic.List(); - [global::ProtoBuf.ProtoMember(12, Name=@"state_adj", DataFormat = global::ProtoBuf.DataFormat.Default)] - public global::System.Collections.Generic.List state_adj - { - get { return _state_adj; } - } - - private readonly global::System.Collections.Generic.List _reaction_class = new global::System.Collections.Generic.List(); - [global::ProtoBuf.ProtoMember(13, Name=@"reaction_class", DataFormat = global::ProtoBuf.DataFormat.Default)] - public global::System.Collections.Generic.List reaction_class - { - get { return _reaction_class; } - } - - private readonly global::System.Collections.Generic.List _reaction_product = new global::System.Collections.Generic.List(); - [global::ProtoBuf.ProtoMember(14, Name=@"reaction_product", DataFormat = global::ProtoBuf.DataFormat.Default)] - public global::System.Collections.Generic.List reaction_product - { - get { return _reaction_product; } - } - - private readonly global::System.Collections.Generic.List _inorganic_flags = new global::System.Collections.Generic.List(); - [global::ProtoBuf.ProtoMember(15, Name=@"inorganic_flags", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - public global::System.Collections.Generic.List inorganic_flags - { - get { return _inorganic_flags; } - } - - [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"Product")] - public partial class Product : global::ProtoBuf.IExtensible - { - public Product() {} - - private string _id; - [global::ProtoBuf.ProtoMember(1, IsRequired = true, Name=@"id", DataFormat = global::ProtoBuf.DataFormat.Default)] - public string id - { - get { return _id; } - set { _id = value; } - } - private int _type; - [global::ProtoBuf.ProtoMember(2, IsRequired = true, Name=@"type", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - public int type - { - get { return _type; } - set { _type = value; } - } - private int _index; - [global::ProtoBuf.ProtoMember(3, IsRequired = true, Name=@"index", DataFormat = global::ProtoBuf.DataFormat.ZigZag)] - public int index - { - get { return _index; } - set { _index = value; } - } - private global::ProtoBuf.IExtension extensionObject; - global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) - { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } - } - - private global::ProtoBuf.IExtension extensionObject; - global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) - { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } - } - - [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"BasicMaterialInfoMask")] - public partial class BasicMaterialInfoMask : global::ProtoBuf.IExtensible - { - public BasicMaterialInfoMask() {} - - private readonly global::System.Collections.Generic.List _states = new global::System.Collections.Generic.List(); - [global::ProtoBuf.ProtoMember(1, Name=@"states", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - public global::System.Collections.Generic.List states - { - get { return _states; } - } - - - private int _temperature = (int)10015; - [global::ProtoBuf.ProtoMember(4, IsRequired = false, Name=@"temperature", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - [global::System.ComponentModel.DefaultValue((int)10015)] - public int temperature - { - get { return _temperature; } - set { _temperature = value; } - } - - private bool _flags = (bool)false; - [global::ProtoBuf.ProtoMember(2, IsRequired = false, Name=@"flags", DataFormat = global::ProtoBuf.DataFormat.Default)] - [global::System.ComponentModel.DefaultValue((bool)false)] - public bool flags - { - get { return _flags; } - set { _flags = value; } - } - - private bool _reaction = (bool)false; - [global::ProtoBuf.ProtoMember(3, IsRequired = false, Name=@"reaction", DataFormat = global::ProtoBuf.DataFormat.Default)] - [global::System.ComponentModel.DefaultValue((bool)false)] - public bool reaction - { - get { return _reaction; } - set { _reaction = value; } - } - [global::ProtoBuf.ProtoContract(Name=@"StateType")] - public enum StateType - { - - [global::ProtoBuf.ProtoEnum(Name=@"Solid", Value=0)] - Solid = 0, - - [global::ProtoBuf.ProtoEnum(Name=@"Liquid", Value=1)] - Liquid = 1, - - [global::ProtoBuf.ProtoEnum(Name=@"Gas", Value=2)] - Gas = 2, - - [global::ProtoBuf.ProtoEnum(Name=@"Powder", Value=3)] - Powder = 3, - - [global::ProtoBuf.ProtoEnum(Name=@"Paste", Value=4)] - Paste = 4, - - [global::ProtoBuf.ProtoEnum(Name=@"Pressed", Value=5)] - Pressed = 5 - } - - private global::ProtoBuf.IExtension extensionObject; - global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) - { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } - } - - [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"JobSkillAttr")] - public partial class JobSkillAttr : global::ProtoBuf.IExtensible - { - public JobSkillAttr() {} - - private int _id; - [global::ProtoBuf.ProtoMember(1, IsRequired = true, Name=@"id", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - public int id - { - get { return _id; } - set { _id = value; } - } - private string _key; - [global::ProtoBuf.ProtoMember(2, IsRequired = true, Name=@"key", DataFormat = global::ProtoBuf.DataFormat.Default)] - public string key - { - get { return _key; } - set { _key = value; } - } - - private string _caption = ""; - [global::ProtoBuf.ProtoMember(3, IsRequired = false, Name=@"caption", DataFormat = global::ProtoBuf.DataFormat.Default)] - [global::System.ComponentModel.DefaultValue("")] - public string caption - { - get { return _caption; } - set { _caption = value; } - } - - private string _caption_noun = ""; - [global::ProtoBuf.ProtoMember(4, IsRequired = false, Name=@"caption_noun", DataFormat = global::ProtoBuf.DataFormat.Default)] - [global::System.ComponentModel.DefaultValue("")] - public string caption_noun - { - get { return _caption_noun; } - set { _caption_noun = value; } - } - - private int _profession = default(int); - [global::ProtoBuf.ProtoMember(5, IsRequired = false, Name=@"profession", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - [global::System.ComponentModel.DefaultValue(default(int))] - public int profession - { - get { return _profession; } - set { _profession = value; } - } - - private int _labor = default(int); - [global::ProtoBuf.ProtoMember(6, IsRequired = false, Name=@"labor", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - [global::System.ComponentModel.DefaultValue(default(int))] - public int labor - { - get { return _labor; } - set { _labor = value; } - } - - private string _type = ""; - [global::ProtoBuf.ProtoMember(7, IsRequired = false, Name=@"type", DataFormat = global::ProtoBuf.DataFormat.Default)] - [global::System.ComponentModel.DefaultValue("")] - public string type - { - get { return _type; } - set { _type = value; } - } - private global::ProtoBuf.IExtension extensionObject; - global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) - { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } - } - - [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"ProfessionAttr")] - public partial class ProfessionAttr : global::ProtoBuf.IExtensible - { - public ProfessionAttr() {} - - private int _id; - [global::ProtoBuf.ProtoMember(1, IsRequired = true, Name=@"id", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - public int id - { - get { return _id; } - set { _id = value; } - } - private string _key; - [global::ProtoBuf.ProtoMember(2, IsRequired = true, Name=@"key", DataFormat = global::ProtoBuf.DataFormat.Default)] - public string key - { - get { return _key; } - set { _key = value; } - } - - private string _caption = ""; - [global::ProtoBuf.ProtoMember(3, IsRequired = false, Name=@"caption", DataFormat = global::ProtoBuf.DataFormat.Default)] - [global::System.ComponentModel.DefaultValue("")] - public string caption - { - get { return _caption; } - set { _caption = value; } - } - - private bool _military = default(bool); - [global::ProtoBuf.ProtoMember(4, IsRequired = false, Name=@"military", DataFormat = global::ProtoBuf.DataFormat.Default)] - [global::System.ComponentModel.DefaultValue(default(bool))] - public bool military - { - get { return _military; } - set { _military = value; } - } - - private bool _can_assign_labor = default(bool); - [global::ProtoBuf.ProtoMember(5, IsRequired = false, Name=@"can_assign_labor", DataFormat = global::ProtoBuf.DataFormat.Default)] - [global::System.ComponentModel.DefaultValue(default(bool))] - public bool can_assign_labor - { - get { return _can_assign_labor; } - set { _can_assign_labor = value; } - } - - private int _parent = default(int); - [global::ProtoBuf.ProtoMember(6, IsRequired = false, Name=@"parent", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - [global::System.ComponentModel.DefaultValue(default(int))] - public int parent - { - get { return _parent; } - set { _parent = value; } - } - private global::ProtoBuf.IExtension extensionObject; - global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) - { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } - } - - [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"UnitLaborAttr")] - public partial class UnitLaborAttr : global::ProtoBuf.IExtensible - { - public UnitLaborAttr() {} - - private int _id; - [global::ProtoBuf.ProtoMember(1, IsRequired = true, Name=@"id", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - public int id - { - get { return _id; } - set { _id = value; } - } - private string _key; - [global::ProtoBuf.ProtoMember(2, IsRequired = true, Name=@"key", DataFormat = global::ProtoBuf.DataFormat.Default)] - public string key - { - get { return _key; } - set { _key = value; } - } - - private string _caption = ""; - [global::ProtoBuf.ProtoMember(3, IsRequired = false, Name=@"caption", DataFormat = global::ProtoBuf.DataFormat.Default)] - [global::System.ComponentModel.DefaultValue("")] - public string caption - { - get { return _caption; } - set { _caption = value; } - } - private global::ProtoBuf.IExtension extensionObject; - global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) - { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } - } - - [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"NameInfo")] - public partial class NameInfo : global::ProtoBuf.IExtensible - { - public NameInfo() {} - - - private string _first_name = ""; - [global::ProtoBuf.ProtoMember(1, IsRequired = false, Name=@"first_name", DataFormat = global::ProtoBuf.DataFormat.Default)] - [global::System.ComponentModel.DefaultValue("")] - public string first_name - { - get { return _first_name; } - set { _first_name = value; } - } - - private string _nickname = ""; - [global::ProtoBuf.ProtoMember(2, IsRequired = false, Name=@"nickname", DataFormat = global::ProtoBuf.DataFormat.Default)] - [global::System.ComponentModel.DefaultValue("")] - public string nickname - { - get { return _nickname; } - set { _nickname = value; } - } - - private int _language_id = (int)-1; - [global::ProtoBuf.ProtoMember(3, IsRequired = false, Name=@"language_id", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - [global::System.ComponentModel.DefaultValue((int)-1)] - public int language_id - { - get { return _language_id; } - set { _language_id = value; } - } - - private string _last_name = ""; - [global::ProtoBuf.ProtoMember(4, IsRequired = false, Name=@"last_name", DataFormat = global::ProtoBuf.DataFormat.Default)] - [global::System.ComponentModel.DefaultValue("")] - public string last_name - { - get { return _last_name; } - set { _last_name = value; } - } - - private string _english_name = ""; - [global::ProtoBuf.ProtoMember(5, IsRequired = false, Name=@"english_name", DataFormat = global::ProtoBuf.DataFormat.Default)] - [global::System.ComponentModel.DefaultValue("")] - public string english_name - { - get { return _english_name; } - set { _english_name = value; } - } - private global::ProtoBuf.IExtension extensionObject; - global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) - { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } - } - - [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"NameTriple")] - public partial class NameTriple : global::ProtoBuf.IExtensible - { - public NameTriple() {} - - private string _normal; - [global::ProtoBuf.ProtoMember(1, IsRequired = true, Name=@"normal", DataFormat = global::ProtoBuf.DataFormat.Default)] - public string normal - { - get { return _normal; } - set { _normal = value; } - } - - private string _plural = ""; - [global::ProtoBuf.ProtoMember(2, IsRequired = false, Name=@"plural", DataFormat = global::ProtoBuf.DataFormat.Default)] - [global::System.ComponentModel.DefaultValue("")] - public string plural - { - get { return _plural; } - set { _plural = value; } - } - - private string _adjective = ""; - [global::ProtoBuf.ProtoMember(3, IsRequired = false, Name=@"adjective", DataFormat = global::ProtoBuf.DataFormat.Default)] - [global::System.ComponentModel.DefaultValue("")] - public string adjective - { - get { return _adjective; } - set { _adjective = value; } - } - private global::ProtoBuf.IExtension extensionObject; - global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) - { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } - } - - [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"UnitCurseInfo")] - public partial class UnitCurseInfo : global::ProtoBuf.IExtensible - { - public UnitCurseInfo() {} - - private uint _add_tags1; - [global::ProtoBuf.ProtoMember(1, IsRequired = true, Name=@"add_tags1", DataFormat = global::ProtoBuf.DataFormat.FixedSize)] - public uint add_tags1 - { - get { return _add_tags1; } - set { _add_tags1 = value; } - } - private uint _rem_tags1; - [global::ProtoBuf.ProtoMember(2, IsRequired = true, Name=@"rem_tags1", DataFormat = global::ProtoBuf.DataFormat.FixedSize)] - public uint rem_tags1 - { - get { return _rem_tags1; } - set { _rem_tags1 = value; } - } - private uint _add_tags2; - [global::ProtoBuf.ProtoMember(3, IsRequired = true, Name=@"add_tags2", DataFormat = global::ProtoBuf.DataFormat.FixedSize)] - public uint add_tags2 - { - get { return _add_tags2; } - set { _add_tags2 = value; } - } - private uint _rem_tags2; - [global::ProtoBuf.ProtoMember(4, IsRequired = true, Name=@"rem_tags2", DataFormat = global::ProtoBuf.DataFormat.FixedSize)] - public uint rem_tags2 - { - get { return _rem_tags2; } - set { _rem_tags2 = value; } - } - - private dfproto.NameTriple _name = null; - [global::ProtoBuf.ProtoMember(5, IsRequired = false, Name=@"name", DataFormat = global::ProtoBuf.DataFormat.Default)] - [global::System.ComponentModel.DefaultValue(null)] - public dfproto.NameTriple name - { - get { return _name; } - set { _name = value; } - } - private global::ProtoBuf.IExtension extensionObject; - global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) - { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } - } - - [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"SkillInfo")] - public partial class SkillInfo : global::ProtoBuf.IExtensible - { - public SkillInfo() {} - - private int _id; - [global::ProtoBuf.ProtoMember(1, IsRequired = true, Name=@"id", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - public int id - { - get { return _id; } - set { _id = value; } - } - private int _level; - [global::ProtoBuf.ProtoMember(2, IsRequired = true, Name=@"level", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - public int level - { - get { return _level; } - set { _level = value; } - } - private int _experience; - [global::ProtoBuf.ProtoMember(3, IsRequired = true, Name=@"experience", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - public int experience - { - get { return _experience; } - set { _experience = value; } - } - private global::ProtoBuf.IExtension extensionObject; - global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) - { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } - } - - [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"UnitMiscTrait")] - public partial class UnitMiscTrait : global::ProtoBuf.IExtensible - { - public UnitMiscTrait() {} - - private int _id; - [global::ProtoBuf.ProtoMember(1, IsRequired = true, Name=@"id", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - public int id - { - get { return _id; } - set { _id = value; } - } - private int _value; - [global::ProtoBuf.ProtoMember(2, IsRequired = true, Name=@"value", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - public int value - { - get { return _value; } - set { _value = value; } - } - private global::ProtoBuf.IExtension extensionObject; - global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) - { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } - } - - [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"BasicUnitInfo")] - public partial class BasicUnitInfo : global::ProtoBuf.IExtensible - { - public BasicUnitInfo() {} - - private int _unit_id; - [global::ProtoBuf.ProtoMember(1, IsRequired = true, Name=@"unit_id", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - public int unit_id - { - get { return _unit_id; } - set { _unit_id = value; } - } - private int _pos_x; - [global::ProtoBuf.ProtoMember(13, IsRequired = true, Name=@"pos_x", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - public int pos_x - { - get { return _pos_x; } - set { _pos_x = value; } - } - private int _pos_y; - [global::ProtoBuf.ProtoMember(14, IsRequired = true, Name=@"pos_y", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - public int pos_y - { - get { return _pos_y; } - set { _pos_y = value; } - } - private int _pos_z; - [global::ProtoBuf.ProtoMember(15, IsRequired = true, Name=@"pos_z", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - public int pos_z - { - get { return _pos_z; } - set { _pos_z = value; } - } - - private dfproto.NameInfo _name = null; - [global::ProtoBuf.ProtoMember(2, IsRequired = false, Name=@"name", DataFormat = global::ProtoBuf.DataFormat.Default)] - [global::System.ComponentModel.DefaultValue(null)] - public dfproto.NameInfo name - { - get { return _name; } - set { _name = value; } - } - private uint _flags1; - [global::ProtoBuf.ProtoMember(3, IsRequired = true, Name=@"flags1", DataFormat = global::ProtoBuf.DataFormat.FixedSize)] - public uint flags1 - { - get { return _flags1; } - set { _flags1 = value; } - } - private uint _flags2; - [global::ProtoBuf.ProtoMember(4, IsRequired = true, Name=@"flags2", DataFormat = global::ProtoBuf.DataFormat.FixedSize)] - public uint flags2 - { - get { return _flags2; } - set { _flags2 = value; } - } - private uint _flags3; - [global::ProtoBuf.ProtoMember(5, IsRequired = true, Name=@"flags3", DataFormat = global::ProtoBuf.DataFormat.FixedSize)] - public uint flags3 - { - get { return _flags3; } - set { _flags3 = value; } - } - private int _race; - [global::ProtoBuf.ProtoMember(6, IsRequired = true, Name=@"race", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - public int race - { - get { return _race; } - set { _race = value; } - } - private int _caste; - [global::ProtoBuf.ProtoMember(7, IsRequired = true, Name=@"caste", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - public int caste - { - get { return _caste; } - set { _caste = value; } - } - - private int _gender = (int)-1; - [global::ProtoBuf.ProtoMember(8, IsRequired = false, Name=@"gender", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - [global::System.ComponentModel.DefaultValue((int)-1)] - public int gender - { - get { return _gender; } - set { _gender = value; } - } - - private int _civ_id = (int)-1; - [global::ProtoBuf.ProtoMember(9, IsRequired = false, Name=@"civ_id", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - [global::System.ComponentModel.DefaultValue((int)-1)] - public int civ_id - { - get { return _civ_id; } - set { _civ_id = value; } - } - - private int _histfig_id = (int)-1; - [global::ProtoBuf.ProtoMember(10, IsRequired = false, Name=@"histfig_id", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - [global::System.ComponentModel.DefaultValue((int)-1)] - public int histfig_id - { - get { return _histfig_id; } - set { _histfig_id = value; } - } - - private int _death_id = (int)-1; - [global::ProtoBuf.ProtoMember(17, IsRequired = false, Name=@"death_id", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - [global::System.ComponentModel.DefaultValue((int)-1)] - public int death_id - { - get { return _death_id; } - set { _death_id = value; } - } - - private uint _death_flags = default(uint); - [global::ProtoBuf.ProtoMember(18, IsRequired = false, Name=@"death_flags", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - [global::System.ComponentModel.DefaultValue(default(uint))] - public uint death_flags - { - get { return _death_flags; } - set { _death_flags = value; } - } - - private int _squad_id = (int)-1; - [global::ProtoBuf.ProtoMember(19, IsRequired = false, Name=@"squad_id", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - [global::System.ComponentModel.DefaultValue((int)-1)] - public int squad_id - { - get { return _squad_id; } - set { _squad_id = value; } - } - - private int _squad_position = (int)-1; - [global::ProtoBuf.ProtoMember(20, IsRequired = false, Name=@"squad_position", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - [global::System.ComponentModel.DefaultValue((int)-1)] - public int squad_position - { - get { return _squad_position; } - set { _squad_position = value; } - } - - private int _profession = (int)-1; - [global::ProtoBuf.ProtoMember(22, IsRequired = false, Name=@"profession", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - [global::System.ComponentModel.DefaultValue((int)-1)] - public int profession - { - get { return _profession; } - set { _profession = value; } - } - - private string _custom_profession = ""; - [global::ProtoBuf.ProtoMember(23, IsRequired = false, Name=@"custom_profession", DataFormat = global::ProtoBuf.DataFormat.Default)] - [global::System.ComponentModel.DefaultValue("")] - public string custom_profession - { - get { return _custom_profession; } - set { _custom_profession = value; } - } - private readonly global::System.Collections.Generic.List _labors = new global::System.Collections.Generic.List(); - [global::ProtoBuf.ProtoMember(11, Name=@"labors", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - public global::System.Collections.Generic.List labors - { - get { return _labors; } - } - - private readonly global::System.Collections.Generic.List _skills = new global::System.Collections.Generic.List(); - [global::ProtoBuf.ProtoMember(12, Name=@"skills", DataFormat = global::ProtoBuf.DataFormat.Default)] - public global::System.Collections.Generic.List skills - { - get { return _skills; } - } - - private readonly global::System.Collections.Generic.List _misc_traits = new global::System.Collections.Generic.List(); - [global::ProtoBuf.ProtoMember(24, Name=@"misc_traits", DataFormat = global::ProtoBuf.DataFormat.Default)] - public global::System.Collections.Generic.List misc_traits - { - get { return _misc_traits; } - } - - - private dfproto.UnitCurseInfo _curse = null; - [global::ProtoBuf.ProtoMember(16, IsRequired = false, Name=@"curse", DataFormat = global::ProtoBuf.DataFormat.Default)] - [global::System.ComponentModel.DefaultValue(null)] - public dfproto.UnitCurseInfo curse - { - get { return _curse; } - set { _curse = value; } - } - private readonly global::System.Collections.Generic.List _burrows = new global::System.Collections.Generic.List(); - [global::ProtoBuf.ProtoMember(21, Name=@"burrows", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - public global::System.Collections.Generic.List burrows - { - get { return _burrows; } - } - - private global::ProtoBuf.IExtension extensionObject; - global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) - { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } - } - - [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"BasicUnitInfoMask")] - public partial class BasicUnitInfoMask : global::ProtoBuf.IExtensible - { - public BasicUnitInfoMask() {} - - - private bool _labors = (bool)false; - [global::ProtoBuf.ProtoMember(1, IsRequired = false, Name=@"labors", DataFormat = global::ProtoBuf.DataFormat.Default)] - [global::System.ComponentModel.DefaultValue((bool)false)] - public bool labors - { - get { return _labors; } - set { _labors = value; } - } - - private bool _skills = (bool)false; - [global::ProtoBuf.ProtoMember(2, IsRequired = false, Name=@"skills", DataFormat = global::ProtoBuf.DataFormat.Default)] - [global::System.ComponentModel.DefaultValue((bool)false)] - public bool skills - { - get { return _skills; } - set { _skills = value; } - } - - private bool _profession = (bool)false; - [global::ProtoBuf.ProtoMember(3, IsRequired = false, Name=@"profession", DataFormat = global::ProtoBuf.DataFormat.Default)] - [global::System.ComponentModel.DefaultValue((bool)false)] - public bool profession - { - get { return _profession; } - set { _profession = value; } - } - - private bool _misc_traits = (bool)false; - [global::ProtoBuf.ProtoMember(4, IsRequired = false, Name=@"misc_traits", DataFormat = global::ProtoBuf.DataFormat.Default)] - [global::System.ComponentModel.DefaultValue((bool)false)] - public bool misc_traits - { - get { return _misc_traits; } - set { _misc_traits = value; } - } - private global::ProtoBuf.IExtension extensionObject; - global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) - { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } - } - - [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"BasicSquadInfo")] - public partial class BasicSquadInfo : global::ProtoBuf.IExtensible - { - public BasicSquadInfo() {} - - private int _squad_id; - [global::ProtoBuf.ProtoMember(1, IsRequired = true, Name=@"squad_id", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - public int squad_id - { - get { return _squad_id; } - set { _squad_id = value; } - } - - private dfproto.NameInfo _name = null; - [global::ProtoBuf.ProtoMember(2, IsRequired = false, Name=@"name", DataFormat = global::ProtoBuf.DataFormat.Default)] - [global::System.ComponentModel.DefaultValue(null)] - public dfproto.NameInfo name - { - get { return _name; } - set { _name = value; } - } - - private string _alias = ""; - [global::ProtoBuf.ProtoMember(3, IsRequired = false, Name=@"alias", DataFormat = global::ProtoBuf.DataFormat.Default)] - [global::System.ComponentModel.DefaultValue("")] - public string alias - { - get { return _alias; } - set { _alias = value; } - } - private readonly global::System.Collections.Generic.List _members = new global::System.Collections.Generic.List(); - [global::ProtoBuf.ProtoMember(4, Name=@"members", DataFormat = global::ProtoBuf.DataFormat.ZigZag)] - public global::System.Collections.Generic.List members - { - get { return _members; } - } - - private global::ProtoBuf.IExtension extensionObject; - global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) - { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } - } - - [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"UnitLaborState")] - public partial class UnitLaborState : global::ProtoBuf.IExtensible - { - public UnitLaborState() {} - - private int _unit_id; - [global::ProtoBuf.ProtoMember(1, IsRequired = true, Name=@"unit_id", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - public int unit_id - { - get { return _unit_id; } - set { _unit_id = value; } - } - private int _labor; - [global::ProtoBuf.ProtoMember(2, IsRequired = true, Name=@"labor", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - public int labor - { - get { return _labor; } - set { _labor = value; } - } - private bool _value; - [global::ProtoBuf.ProtoMember(3, IsRequired = true, Name=@"value", DataFormat = global::ProtoBuf.DataFormat.Default)] - public bool value - { - get { return _value; } - set { _value = value; } - } - private global::ProtoBuf.IExtension extensionObject; - global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) - { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } - } - -} \ No newline at end of file diff --git a/clients/unity/simple_sample/Assets/RemoteClient/Basic.cs.meta b/clients/unity/simple_sample/Assets/RemoteClient/Basic.cs.meta deleted file mode 100644 index a56dd6d40..000000000 --- a/clients/unity/simple_sample/Assets/RemoteClient/Basic.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 2678d7ad7ff72d248854d487d8f15c21 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/clients/unity/simple_sample/Assets/RemoteClient/BasicApi.cs b/clients/unity/simple_sample/Assets/RemoteClient/BasicApi.cs deleted file mode 100644 index 3f9f97984..000000000 --- a/clients/unity/simple_sample/Assets/RemoteClient/BasicApi.cs +++ /dev/null @@ -1,460 +0,0 @@ -//------------------------------------------------------------------------------ -// -// This code was generated by a tool. -// -// Changes to this file may cause incorrect behavior and will be lost if -// the code is regenerated. -// -//------------------------------------------------------------------------------ - -// Generated from: BasicApi.proto -// Note: requires additional types generated from: Basic.proto -namespace dfproto -{ - [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"GetWorldInfoOut")] - public partial class GetWorldInfoOut : global::ProtoBuf.IExtensible - { - public GetWorldInfoOut() {} - - private dfproto.GetWorldInfoOut.Mode _mode; - [global::ProtoBuf.ProtoMember(1, IsRequired = true, Name=@"mode", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - public dfproto.GetWorldInfoOut.Mode mode - { - get { return _mode; } - set { _mode = value; } - } - private string _save_dir; - [global::ProtoBuf.ProtoMember(2, IsRequired = true, Name=@"save_dir", DataFormat = global::ProtoBuf.DataFormat.Default)] - public string save_dir - { - get { return _save_dir; } - set { _save_dir = value; } - } - - private dfproto.NameInfo _world_name = null; - [global::ProtoBuf.ProtoMember(3, IsRequired = false, Name=@"world_name", DataFormat = global::ProtoBuf.DataFormat.Default)] - [global::System.ComponentModel.DefaultValue(null)] - public dfproto.NameInfo world_name - { - get { return _world_name; } - set { _world_name = value; } - } - - private int _civ_id = default(int); - [global::ProtoBuf.ProtoMember(4, IsRequired = false, Name=@"civ_id", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - [global::System.ComponentModel.DefaultValue(default(int))] - public int civ_id - { - get { return _civ_id; } - set { _civ_id = value; } - } - - private int _site_id = default(int); - [global::ProtoBuf.ProtoMember(5, IsRequired = false, Name=@"site_id", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - [global::System.ComponentModel.DefaultValue(default(int))] - public int site_id - { - get { return _site_id; } - set { _site_id = value; } - } - - private int _group_id = default(int); - [global::ProtoBuf.ProtoMember(6, IsRequired = false, Name=@"group_id", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - [global::System.ComponentModel.DefaultValue(default(int))] - public int group_id - { - get { return _group_id; } - set { _group_id = value; } - } - - private int _race_id = default(int); - [global::ProtoBuf.ProtoMember(7, IsRequired = false, Name=@"race_id", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - [global::System.ComponentModel.DefaultValue(default(int))] - public int race_id - { - get { return _race_id; } - set { _race_id = value; } - } - - private int _player_unit_id = default(int); - [global::ProtoBuf.ProtoMember(8, IsRequired = false, Name=@"player_unit_id", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - [global::System.ComponentModel.DefaultValue(default(int))] - public int player_unit_id - { - get { return _player_unit_id; } - set { _player_unit_id = value; } - } - - private int _player_histfig_id = default(int); - [global::ProtoBuf.ProtoMember(9, IsRequired = false, Name=@"player_histfig_id", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - [global::System.ComponentModel.DefaultValue(default(int))] - public int player_histfig_id - { - get { return _player_histfig_id; } - set { _player_histfig_id = value; } - } - private readonly global::System.Collections.Generic.List _companion_histfig_ids = new global::System.Collections.Generic.List(); - [global::ProtoBuf.ProtoMember(10, Name=@"companion_histfig_ids", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - public global::System.Collections.Generic.List companion_histfig_ids - { - get { return _companion_histfig_ids; } - } - - [global::ProtoBuf.ProtoContract(Name=@"Mode")] - public enum Mode - { - - [global::ProtoBuf.ProtoEnum(Name=@"MODE_DWARF", Value=1)] - MODE_DWARF = 1, - - [global::ProtoBuf.ProtoEnum(Name=@"MODE_ADVENTURE", Value=2)] - MODE_ADVENTURE = 2, - - [global::ProtoBuf.ProtoEnum(Name=@"MODE_LEGENDS", Value=3)] - MODE_LEGENDS = 3 - } - - private global::ProtoBuf.IExtension extensionObject; - global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) - { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } - } - - [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"ListEnumsOut")] - public partial class ListEnumsOut : global::ProtoBuf.IExtensible - { - public ListEnumsOut() {} - - private readonly global::System.Collections.Generic.List _material_flags = new global::System.Collections.Generic.List(); - [global::ProtoBuf.ProtoMember(1, Name=@"material_flags", DataFormat = global::ProtoBuf.DataFormat.Default)] - public global::System.Collections.Generic.List material_flags - { - get { return _material_flags; } - } - - private readonly global::System.Collections.Generic.List _inorganic_flags = new global::System.Collections.Generic.List(); - [global::ProtoBuf.ProtoMember(2, Name=@"inorganic_flags", DataFormat = global::ProtoBuf.DataFormat.Default)] - public global::System.Collections.Generic.List inorganic_flags - { - get { return _inorganic_flags; } - } - - private readonly global::System.Collections.Generic.List _unit_flags1 = new global::System.Collections.Generic.List(); - [global::ProtoBuf.ProtoMember(3, Name=@"unit_flags1", DataFormat = global::ProtoBuf.DataFormat.Default)] - public global::System.Collections.Generic.List unit_flags1 - { - get { return _unit_flags1; } - } - - private readonly global::System.Collections.Generic.List _unit_flags2 = new global::System.Collections.Generic.List(); - [global::ProtoBuf.ProtoMember(4, Name=@"unit_flags2", DataFormat = global::ProtoBuf.DataFormat.Default)] - public global::System.Collections.Generic.List unit_flags2 - { - get { return _unit_flags2; } - } - - private readonly global::System.Collections.Generic.List _unit_flags3 = new global::System.Collections.Generic.List(); - [global::ProtoBuf.ProtoMember(5, Name=@"unit_flags3", DataFormat = global::ProtoBuf.DataFormat.Default)] - public global::System.Collections.Generic.List unit_flags3 - { - get { return _unit_flags3; } - } - - private readonly global::System.Collections.Generic.List _unit_labor = new global::System.Collections.Generic.List(); - [global::ProtoBuf.ProtoMember(6, Name=@"unit_labor", DataFormat = global::ProtoBuf.DataFormat.Default)] - public global::System.Collections.Generic.List unit_labor - { - get { return _unit_labor; } - } - - private readonly global::System.Collections.Generic.List _job_skill = new global::System.Collections.Generic.List(); - [global::ProtoBuf.ProtoMember(7, Name=@"job_skill", DataFormat = global::ProtoBuf.DataFormat.Default)] - public global::System.Collections.Generic.List job_skill - { - get { return _job_skill; } - } - - private readonly global::System.Collections.Generic.List _cie_add_tag_mask1 = new global::System.Collections.Generic.List(); - [global::ProtoBuf.ProtoMember(8, Name=@"cie_add_tag_mask1", DataFormat = global::ProtoBuf.DataFormat.Default)] - public global::System.Collections.Generic.List cie_add_tag_mask1 - { - get { return _cie_add_tag_mask1; } - } - - private readonly global::System.Collections.Generic.List _cie_add_tag_mask2 = new global::System.Collections.Generic.List(); - [global::ProtoBuf.ProtoMember(9, Name=@"cie_add_tag_mask2", DataFormat = global::ProtoBuf.DataFormat.Default)] - public global::System.Collections.Generic.List cie_add_tag_mask2 - { - get { return _cie_add_tag_mask2; } - } - - private readonly global::System.Collections.Generic.List _death_info_flags = new global::System.Collections.Generic.List(); - [global::ProtoBuf.ProtoMember(10, Name=@"death_info_flags", DataFormat = global::ProtoBuf.DataFormat.Default)] - public global::System.Collections.Generic.List death_info_flags - { - get { return _death_info_flags; } - } - - private readonly global::System.Collections.Generic.List _profession = new global::System.Collections.Generic.List(); - [global::ProtoBuf.ProtoMember(11, Name=@"profession", DataFormat = global::ProtoBuf.DataFormat.Default)] - public global::System.Collections.Generic.List profession - { - get { return _profession; } - } - - private global::ProtoBuf.IExtension extensionObject; - global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) - { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } - } - - [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"ListJobSkillsOut")] - public partial class ListJobSkillsOut : global::ProtoBuf.IExtensible - { - public ListJobSkillsOut() {} - - private readonly global::System.Collections.Generic.List _skill = new global::System.Collections.Generic.List(); - [global::ProtoBuf.ProtoMember(1, Name=@"skill", DataFormat = global::ProtoBuf.DataFormat.Default)] - public global::System.Collections.Generic.List skill - { - get { return _skill; } - } - - private readonly global::System.Collections.Generic.List _profession = new global::System.Collections.Generic.List(); - [global::ProtoBuf.ProtoMember(2, Name=@"profession", DataFormat = global::ProtoBuf.DataFormat.Default)] - public global::System.Collections.Generic.List profession - { - get { return _profession; } - } - - private readonly global::System.Collections.Generic.List _labor = new global::System.Collections.Generic.List(); - [global::ProtoBuf.ProtoMember(3, Name=@"labor", DataFormat = global::ProtoBuf.DataFormat.Default)] - public global::System.Collections.Generic.List labor - { - get { return _labor; } - } - - private global::ProtoBuf.IExtension extensionObject; - global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) - { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } - } - - [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"ListMaterialsIn")] - public partial class ListMaterialsIn : global::ProtoBuf.IExtensible - { - public ListMaterialsIn() {} - - - private dfproto.BasicMaterialInfoMask _mask = null; - [global::ProtoBuf.ProtoMember(1, IsRequired = false, Name=@"mask", DataFormat = global::ProtoBuf.DataFormat.Default)] - [global::System.ComponentModel.DefaultValue(null)] - public dfproto.BasicMaterialInfoMask mask - { - get { return _mask; } - set { _mask = value; } - } - private readonly global::System.Collections.Generic.List _id_list = new global::System.Collections.Generic.List(); - [global::ProtoBuf.ProtoMember(2, Name=@"id_list", DataFormat = global::ProtoBuf.DataFormat.Default)] - public global::System.Collections.Generic.List id_list - { - get { return _id_list; } - } - - - private bool _builtin = default(bool); - [global::ProtoBuf.ProtoMember(3, IsRequired = false, Name=@"builtin", DataFormat = global::ProtoBuf.DataFormat.Default)] - [global::System.ComponentModel.DefaultValue(default(bool))] - public bool builtin - { - get { return _builtin; } - set { _builtin = value; } - } - - private bool _inorganic = default(bool); - [global::ProtoBuf.ProtoMember(4, IsRequired = false, Name=@"inorganic", DataFormat = global::ProtoBuf.DataFormat.Default)] - [global::System.ComponentModel.DefaultValue(default(bool))] - public bool inorganic - { - get { return _inorganic; } - set { _inorganic = value; } - } - - private bool _creatures = default(bool); - [global::ProtoBuf.ProtoMember(5, IsRequired = false, Name=@"creatures", DataFormat = global::ProtoBuf.DataFormat.Default)] - [global::System.ComponentModel.DefaultValue(default(bool))] - public bool creatures - { - get { return _creatures; } - set { _creatures = value; } - } - - private bool _plants = default(bool); - [global::ProtoBuf.ProtoMember(6, IsRequired = false, Name=@"plants", DataFormat = global::ProtoBuf.DataFormat.Default)] - [global::System.ComponentModel.DefaultValue(default(bool))] - public bool plants - { - get { return _plants; } - set { _plants = value; } - } - private global::ProtoBuf.IExtension extensionObject; - global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) - { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } - } - - [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"ListMaterialsOut")] - public partial class ListMaterialsOut : global::ProtoBuf.IExtensible - { - public ListMaterialsOut() {} - - private readonly global::System.Collections.Generic.List _value = new global::System.Collections.Generic.List(); - [global::ProtoBuf.ProtoMember(1, Name=@"value", DataFormat = global::ProtoBuf.DataFormat.Default)] - public global::System.Collections.Generic.List value - { - get { return _value; } - } - - private global::ProtoBuf.IExtension extensionObject; - global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) - { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } - } - - [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"ListUnitsIn")] - public partial class ListUnitsIn : global::ProtoBuf.IExtensible - { - public ListUnitsIn() {} - - - private dfproto.BasicUnitInfoMask _mask = null; - [global::ProtoBuf.ProtoMember(1, IsRequired = false, Name=@"mask", DataFormat = global::ProtoBuf.DataFormat.Default)] - [global::System.ComponentModel.DefaultValue(null)] - public dfproto.BasicUnitInfoMask mask - { - get { return _mask; } - set { _mask = value; } - } - private readonly global::System.Collections.Generic.List _id_list = new global::System.Collections.Generic.List(); - [global::ProtoBuf.ProtoMember(2, Name=@"id_list", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - public global::System.Collections.Generic.List id_list - { - get { return _id_list; } - } - - - private bool _scan_all = default(bool); - [global::ProtoBuf.ProtoMember(5, IsRequired = false, Name=@"scan_all", DataFormat = global::ProtoBuf.DataFormat.Default)] - [global::System.ComponentModel.DefaultValue(default(bool))] - public bool scan_all - { - get { return _scan_all; } - set { _scan_all = value; } - } - - private int _race = default(int); - [global::ProtoBuf.ProtoMember(3, IsRequired = false, Name=@"race", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - [global::System.ComponentModel.DefaultValue(default(int))] - public int race - { - get { return _race; } - set { _race = value; } - } - - private int _civ_id = default(int); - [global::ProtoBuf.ProtoMember(4, IsRequired = false, Name=@"civ_id", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - [global::System.ComponentModel.DefaultValue(default(int))] - public int civ_id - { - get { return _civ_id; } - set { _civ_id = value; } - } - - private bool _dead = default(bool); - [global::ProtoBuf.ProtoMember(6, IsRequired = false, Name=@"dead", DataFormat = global::ProtoBuf.DataFormat.Default)] - [global::System.ComponentModel.DefaultValue(default(bool))] - public bool dead - { - get { return _dead; } - set { _dead = value; } - } - - private bool _alive = default(bool); - [global::ProtoBuf.ProtoMember(7, IsRequired = false, Name=@"alive", DataFormat = global::ProtoBuf.DataFormat.Default)] - [global::System.ComponentModel.DefaultValue(default(bool))] - public bool alive - { - get { return _alive; } - set { _alive = value; } - } - - private bool _sane = default(bool); - [global::ProtoBuf.ProtoMember(8, IsRequired = false, Name=@"sane", DataFormat = global::ProtoBuf.DataFormat.Default)] - [global::System.ComponentModel.DefaultValue(default(bool))] - public bool sane - { - get { return _sane; } - set { _sane = value; } - } - private global::ProtoBuf.IExtension extensionObject; - global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) - { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } - } - - [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"ListUnitsOut")] - public partial class ListUnitsOut : global::ProtoBuf.IExtensible - { - public ListUnitsOut() {} - - private readonly global::System.Collections.Generic.List _value = new global::System.Collections.Generic.List(); - [global::ProtoBuf.ProtoMember(1, Name=@"value", DataFormat = global::ProtoBuf.DataFormat.Default)] - public global::System.Collections.Generic.List value - { - get { return _value; } - } - - private global::ProtoBuf.IExtension extensionObject; - global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) - { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } - } - - [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"ListSquadsIn")] - public partial class ListSquadsIn : global::ProtoBuf.IExtensible - { - public ListSquadsIn() {} - - private global::ProtoBuf.IExtension extensionObject; - global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) - { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } - } - - [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"ListSquadsOut")] - public partial class ListSquadsOut : global::ProtoBuf.IExtensible - { - public ListSquadsOut() {} - - private readonly global::System.Collections.Generic.List _value = new global::System.Collections.Generic.List(); - [global::ProtoBuf.ProtoMember(1, Name=@"value", DataFormat = global::ProtoBuf.DataFormat.Default)] - public global::System.Collections.Generic.List value - { - get { return _value; } - } - - private global::ProtoBuf.IExtension extensionObject; - global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) - { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } - } - - [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"SetUnitLaborsIn")] - public partial class SetUnitLaborsIn : global::ProtoBuf.IExtensible - { - public SetUnitLaborsIn() {} - - private readonly global::System.Collections.Generic.List _change = new global::System.Collections.Generic.List(); - [global::ProtoBuf.ProtoMember(1, Name=@"change", DataFormat = global::ProtoBuf.DataFormat.Default)] - public global::System.Collections.Generic.List change - { - get { return _change; } - } - - private global::ProtoBuf.IExtension extensionObject; - global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) - { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } - } - -} \ No newline at end of file diff --git a/clients/unity/simple_sample/Assets/RemoteClient/BasicApi.cs.meta b/clients/unity/simple_sample/Assets/RemoteClient/BasicApi.cs.meta deleted file mode 100644 index 1a1944d8d..000000000 --- a/clients/unity/simple_sample/Assets/RemoteClient/BasicApi.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: ab257b5c0c7259943a5b614e3dde558e -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/clients/unity/simple_sample/Assets/RemoteClient/ColorText.cs b/clients/unity/simple_sample/Assets/RemoteClient/ColorText.cs deleted file mode 100644 index c98941b01..000000000 --- a/clients/unity/simple_sample/Assets/RemoteClient/ColorText.cs +++ /dev/null @@ -1,119 +0,0 @@ -using System; -using UnityEngine; -using AT.MIN; -using dfproto; - -namespace DFHack -{ - public enum color_value - { - COLOR_RESET = -1, - COLOR_BLACK = 0, - COLOR_BLUE, - COLOR_GREEN, - COLOR_CYAN, - COLOR_RED, - COLOR_MAGENTA, - COLOR_BROWN, - COLOR_GREY, - COLOR_DARKGREY, - COLOR_LIGHTBLUE, - COLOR_LIGHTGREEN, - COLOR_LIGHTCYAN, - COLOR_LIGHTRED, - COLOR_LIGHTMAGENTA, - COLOR_YELLOW, - COLOR_WHITE, - COLOR_MAX = COLOR_WHITE - }; - - public class color_ostream - { - string buffer; - public void printerr(string Format, params object[] Parameters) - { - Debug.LogError(Tools.sprintf(Format, Parameters)); - } - public void print(string Format, params object[] Parameters) - { - Debug.Log(Tools.sprintf(Format, Parameters)); - } - public void begin_batch() - { - buffer = ""; - } - public void end_batch() - { - Debug.Log(buffer); - buffer = null; - } - - public void add_text(color_value color, string text) - { - //Debug.Log(text); - buffer += text; - } - - } - public class buffered_color_ostream : color_ostream - { - //protected: - public new void add_text(color_value color, string text) - { - if (text.Length == 0) - return; - - if (buffer.Length == 0) - { - buffer = text; - } - else - { - buffer += text; - } - } - - - - // buffered_color_ostream() {} - // ~buffered_color_ostream() {} - - // const std::list &fragments() { return buffer; } - - protected string buffer; - } - public class color_ostream_proxy : buffered_color_ostream - { - protected color_ostream target; - - //virtual void flush_proxy(); - - public color_ostream_proxy(color_ostream targetIn) - { - target = targetIn; - } - - public virtual color_ostream proxy_target() { return target; } - - public void decode(dfproto.CoreTextNotification data) - { - int cnt = data.fragments.Count; - - if (cnt > 0) - { - target.begin_batch(); - - for (int i = 0; i < cnt; i++) - { - var frag = data.fragments[i]; - - //color_value color = frag.has_color() ? color_value(frag.color()) : COLOR_RESET; - target.add_text(color_value.COLOR_RESET, frag.text); - //target.printerr(data.fragments[i].text); - } - - target.end_batch(); - } - } - } -} \ No newline at end of file diff --git a/clients/unity/simple_sample/Assets/RemoteClient/ColorText.cs.meta b/clients/unity/simple_sample/Assets/RemoteClient/ColorText.cs.meta deleted file mode 100644 index 2df78fd3d..000000000 --- a/clients/unity/simple_sample/Assets/RemoteClient/ColorText.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 8401f7b1211481b469ac746534a896b8 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/clients/unity/simple_sample/Assets/RemoteClient/CoreProtocol.cs b/clients/unity/simple_sample/Assets/RemoteClient/CoreProtocol.cs deleted file mode 100644 index e5536da04..000000000 --- a/clients/unity/simple_sample/Assets/RemoteClient/CoreProtocol.cs +++ /dev/null @@ -1,311 +0,0 @@ -//------------------------------------------------------------------------------ -// -// This code was generated by a tool. -// -// Changes to this file may cause incorrect behavior and will be lost if -// the code is regenerated. -// -//------------------------------------------------------------------------------ - -// Generated from: CoreProtocol.proto -namespace dfproto -{ - [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"CoreTextFragment")] - public partial class CoreTextFragment : global::ProtoBuf.IExtensible - { - public CoreTextFragment() {} - - private string _text; - [global::ProtoBuf.ProtoMember(1, IsRequired = true, Name=@"text", DataFormat = global::ProtoBuf.DataFormat.Default)] - public string text - { - get { return _text; } - set { _text = value; } - } - - private dfproto.CoreTextFragment.Color _color = dfproto.CoreTextFragment.Color.COLOR_BLACK; - [global::ProtoBuf.ProtoMember(2, IsRequired = false, Name=@"color", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - [global::System.ComponentModel.DefaultValue(dfproto.CoreTextFragment.Color.COLOR_BLACK)] - public dfproto.CoreTextFragment.Color color - { - get { return _color; } - set { _color = value; } - } - [global::ProtoBuf.ProtoContract(Name=@"Color")] - public enum Color - { - - [global::ProtoBuf.ProtoEnum(Name=@"COLOR_BLACK", Value=0)] - COLOR_BLACK = 0, - - [global::ProtoBuf.ProtoEnum(Name=@"COLOR_BLUE", Value=1)] - COLOR_BLUE = 1, - - [global::ProtoBuf.ProtoEnum(Name=@"COLOR_GREEN", Value=2)] - COLOR_GREEN = 2, - - [global::ProtoBuf.ProtoEnum(Name=@"COLOR_CYAN", Value=3)] - COLOR_CYAN = 3, - - [global::ProtoBuf.ProtoEnum(Name=@"COLOR_RED", Value=4)] - COLOR_RED = 4, - - [global::ProtoBuf.ProtoEnum(Name=@"COLOR_MAGENTA", Value=5)] - COLOR_MAGENTA = 5, - - [global::ProtoBuf.ProtoEnum(Name=@"COLOR_BROWN", Value=6)] - COLOR_BROWN = 6, - - [global::ProtoBuf.ProtoEnum(Name=@"COLOR_GREY", Value=7)] - COLOR_GREY = 7, - - [global::ProtoBuf.ProtoEnum(Name=@"COLOR_DARKGREY", Value=8)] - COLOR_DARKGREY = 8, - - [global::ProtoBuf.ProtoEnum(Name=@"COLOR_LIGHTBLUE", Value=9)] - COLOR_LIGHTBLUE = 9, - - [global::ProtoBuf.ProtoEnum(Name=@"COLOR_LIGHTGREEN", Value=10)] - COLOR_LIGHTGREEN = 10, - - [global::ProtoBuf.ProtoEnum(Name=@"COLOR_LIGHTCYAN", Value=11)] - COLOR_LIGHTCYAN = 11, - - [global::ProtoBuf.ProtoEnum(Name=@"COLOR_LIGHTRED", Value=12)] - COLOR_LIGHTRED = 12, - - [global::ProtoBuf.ProtoEnum(Name=@"COLOR_LIGHTMAGENTA", Value=13)] - COLOR_LIGHTMAGENTA = 13, - - [global::ProtoBuf.ProtoEnum(Name=@"COLOR_YELLOW", Value=14)] - COLOR_YELLOW = 14, - - [global::ProtoBuf.ProtoEnum(Name=@"COLOR_WHITE", Value=15)] - COLOR_WHITE = 15 - } - - private global::ProtoBuf.IExtension extensionObject; - global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) - { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } - } - - [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"CoreTextNotification")] - public partial class CoreTextNotification : global::ProtoBuf.IExtensible - { - public CoreTextNotification() {} - - private readonly global::System.Collections.Generic.List _fragments = new global::System.Collections.Generic.List(); - [global::ProtoBuf.ProtoMember(1, Name=@"fragments", DataFormat = global::ProtoBuf.DataFormat.Default)] - public global::System.Collections.Generic.List fragments - { - get { return _fragments; } - } - - private global::ProtoBuf.IExtension extensionObject; - global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) - { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } - } - - [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"CoreErrorNotification")] - public partial class CoreErrorNotification : global::ProtoBuf.IExtensible - { - public CoreErrorNotification() {} - - private dfproto.CoreErrorNotification.ErrorCode _code; - [global::ProtoBuf.ProtoMember(1, IsRequired = true, Name=@"code", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - public dfproto.CoreErrorNotification.ErrorCode code - { - get { return _code; } - set { _code = value; } - } - [global::ProtoBuf.ProtoContract(Name=@"ErrorCode")] - public enum ErrorCode - { - - [global::ProtoBuf.ProtoEnum(Name=@"CR_LINK_FAILURE", Value=-3)] - CR_LINK_FAILURE = -3, - - [global::ProtoBuf.ProtoEnum(Name=@"CR_WOULD_BREAK", Value=-2)] - CR_WOULD_BREAK = -2, - - [global::ProtoBuf.ProtoEnum(Name=@"CR_NOT_IMPLEMENTED", Value=-1)] - CR_NOT_IMPLEMENTED = -1, - - [global::ProtoBuf.ProtoEnum(Name=@"CR_OK", Value=0)] - CR_OK = 0, - - [global::ProtoBuf.ProtoEnum(Name=@"CR_FAILURE", Value=1)] - CR_FAILURE = 1, - - [global::ProtoBuf.ProtoEnum(Name=@"CR_WRONG_USAGE", Value=2)] - CR_WRONG_USAGE = 2, - - [global::ProtoBuf.ProtoEnum(Name=@"CR_NOT_FOUND", Value=3)] - CR_NOT_FOUND = 3 - } - - private global::ProtoBuf.IExtension extensionObject; - global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) - { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } - } - - [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"EmptyMessage")] - public partial class EmptyMessage : global::ProtoBuf.IExtensible - { - public EmptyMessage() {} - - private global::ProtoBuf.IExtension extensionObject; - global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) - { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } - } - - [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"IntMessage")] - public partial class IntMessage : global::ProtoBuf.IExtensible - { - public IntMessage() {} - - private int _value; - [global::ProtoBuf.ProtoMember(1, IsRequired = true, Name=@"value", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - public int value - { - get { return _value; } - set { _value = value; } - } - private global::ProtoBuf.IExtension extensionObject; - global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) - { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } - } - - [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"IntListMessage")] - public partial class IntListMessage : global::ProtoBuf.IExtensible - { - public IntListMessage() {} - - private readonly global::System.Collections.Generic.List _value = new global::System.Collections.Generic.List(); - [global::ProtoBuf.ProtoMember(1, Name=@"value", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - public global::System.Collections.Generic.List value - { - get { return _value; } - } - - private global::ProtoBuf.IExtension extensionObject; - global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) - { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } - } - - [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"StringMessage")] - public partial class StringMessage : global::ProtoBuf.IExtensible - { - public StringMessage() {} - - private string _value; - [global::ProtoBuf.ProtoMember(1, IsRequired = true, Name=@"value", DataFormat = global::ProtoBuf.DataFormat.Default)] - public string value - { - get { return _value; } - set { _value = value; } - } - private global::ProtoBuf.IExtension extensionObject; - global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) - { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } - } - - [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"StringListMessage")] - public partial class StringListMessage : global::ProtoBuf.IExtensible - { - public StringListMessage() {} - - private readonly global::System.Collections.Generic.List _value = new global::System.Collections.Generic.List(); - [global::ProtoBuf.ProtoMember(1, Name=@"value", DataFormat = global::ProtoBuf.DataFormat.Default)] - public global::System.Collections.Generic.List value - { - get { return _value; } - } - - private global::ProtoBuf.IExtension extensionObject; - global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) - { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } - } - - [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"CoreBindRequest")] - public partial class CoreBindRequest : global::ProtoBuf.IExtensible - { - public CoreBindRequest() {} - - private string _method; - [global::ProtoBuf.ProtoMember(1, IsRequired = true, Name=@"method", DataFormat = global::ProtoBuf.DataFormat.Default)] - public string method - { - get { return _method; } - set { _method = value; } - } - private string _input_msg; - [global::ProtoBuf.ProtoMember(2, IsRequired = true, Name=@"input_msg", DataFormat = global::ProtoBuf.DataFormat.Default)] - public string input_msg - { - get { return _input_msg; } - set { _input_msg = value; } - } - private string _output_msg; - [global::ProtoBuf.ProtoMember(3, IsRequired = true, Name=@"output_msg", DataFormat = global::ProtoBuf.DataFormat.Default)] - public string output_msg - { - get { return _output_msg; } - set { _output_msg = value; } - } - - private string _plugin = ""; - [global::ProtoBuf.ProtoMember(4, IsRequired = false, Name=@"plugin", DataFormat = global::ProtoBuf.DataFormat.Default)] - [global::System.ComponentModel.DefaultValue("")] - public string plugin - { - get { return _plugin; } - set { _plugin = value; } - } - private global::ProtoBuf.IExtension extensionObject; - global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) - { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } - } - - [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"CoreBindReply")] - public partial class CoreBindReply : global::ProtoBuf.IExtensible - { - public CoreBindReply() {} - - private int _assigned_id; - [global::ProtoBuf.ProtoMember(1, IsRequired = true, Name=@"assigned_id", DataFormat = global::ProtoBuf.DataFormat.TwosComplement)] - public int assigned_id - { - get { return _assigned_id; } - set { _assigned_id = value; } - } - private global::ProtoBuf.IExtension extensionObject; - global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) - { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } - } - - [global::System.Serializable, global::ProtoBuf.ProtoContract(Name=@"CoreRunCommandRequest")] - public partial class CoreRunCommandRequest : global::ProtoBuf.IExtensible - { - public CoreRunCommandRequest() {} - - private string _command; - [global::ProtoBuf.ProtoMember(1, IsRequired = true, Name=@"command", DataFormat = global::ProtoBuf.DataFormat.Default)] - public string command - { - get { return _command; } - set { _command = value; } - } - private readonly global::System.Collections.Generic.List _arguments = new global::System.Collections.Generic.List(); - [global::ProtoBuf.ProtoMember(2, Name=@"arguments", DataFormat = global::ProtoBuf.DataFormat.Default)] - public global::System.Collections.Generic.List arguments - { - get { return _arguments; } - } - - private global::ProtoBuf.IExtension extensionObject; - global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing) - { return global::ProtoBuf.Extensible.GetExtensionObject(ref extensionObject, createIfMissing); } - } - -} \ No newline at end of file diff --git a/clients/unity/simple_sample/Assets/RemoteClient/CoreProtocol.cs.meta b/clients/unity/simple_sample/Assets/RemoteClient/CoreProtocol.cs.meta deleted file mode 100644 index 23e58ec8e..000000000 --- a/clients/unity/simple_sample/Assets/RemoteClient/CoreProtocol.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: d8595cea157337845be980bcc8978623 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/clients/unity/simple_sample/Assets/RemoteClient/RemoteClient.cs b/clients/unity/simple_sample/Assets/RemoteClient/RemoteClient.cs deleted file mode 100644 index dd315310f..000000000 --- a/clients/unity/simple_sample/Assets/RemoteClient/RemoteClient.cs +++ /dev/null @@ -1,849 +0,0 @@ -/* -https://github.com/peterix/dfhack -Copyright (c) 2009-2012 Petr Mrázek (peterix@gmail.com) - -This software is provided 'as-is', without any express or implied -warranty. In no event will the authors be held liable for any -damages arising from the use of this software. - -Permission is granted to anyone to use this software for any -purpose, including commercial applications, and to alter it and -redistribute it freely, subject to the following restrictions: - -1. The origin of this software must not be misrepresented; you must -not claim that you wrote the original software. If you use this -software in a product, an acknowledgment in the product documentation -would be appreciated but is not required. - -2. Altered source versions must be plainly marked as such, and -must not be misrepresented as being the original software. - -3. This notice may not be removed or altered from any source -distribution. -*/ - -using dfproto; -using System; -using System.Net; -using System.Net.Sockets; -using System.IO; -using System.Text; -using System.Runtime.Serialization; -using System.Runtime.Serialization.Formatters.Binary; -using System.Collections.Generic; -using System.Diagnostics; - -namespace DFHack -{ - using message_type = ProtoBuf.IExtensible; - - public enum command_result - { - CR_LINK_FAILURE = -3, // RPC call failed due to I/O or protocol error - CR_NEEDS_CONSOLE = -2, // Attempt to call interactive command without console - CR_NOT_IMPLEMENTED = -1, // Command not implemented, or plugin not loaded - CR_OK = 0, // Success - CR_FAILURE = 1, // Failure - CR_WRONG_USAGE = 2, // Wrong arguments or ui state - CR_NOT_FOUND = 3 // Target object not found (for RPC mainly) - } - - public enum DFHackReplyCode - { - RPC_REPLY_RESULT = -1, - RPC_REPLY_FAIL = -2, - RPC_REPLY_TEXT = -3, - RPC_REQUEST_QUIT = -4 - } - - class RPCHandshakeHeader - { - //public string magic; - //public int version; - - public static string REQUEST_MAGIC = "DFHack?\n"; - public static string RESPONSE_MAGIC = "DFHack!\n"; - } - - struct RPCMessageHeader - { - public const int MAX_MESSAGE_SIZE = 8 * 1048576; - - public Int16 id; - public Int32 size; - - public byte[] ConvertToBtyes() - { - List output = new List(); - output.AddRange(BitConverter.GetBytes(id)); - output.AddRange(new byte[2]); - output.AddRange(BitConverter.GetBytes(size)); - return output.ToArray(); - } - string BytesToString(byte[] input) - { - string output = ""; - foreach (byte item in input) - { - if (output.Length > 0) - output += ","; - output += item; - } - return output; - } - } - - // simple function to store - struct DFCoord - { - public int x, y, z; - //convert - UnityEngine.Vector3 ToVector3() - { - return new UnityEngine.Vector3(x + 0.5f, z + 0.5f, -y - 0.5f); - } - static DFCoord FromVector3(UnityEngine.Vector3 input) - { - DFCoord output = new DFCoord((int)input.x, (int)(-input.z), (int)input.y); - return output; - } - - DFCoord(int inx, int iny, int inz) - { - x = inx; - y = iny; - z = inz; - } - - public bool isValid() - { - return x != -30000; - } - public void clear() - { - x = y = z = -30000; - } - - public static bool operator <(DFCoord a, DFCoord b) - { - if (a.x != b.x) return (a.x < b.x); - if (a.y != b.y) return (a.y < b.y); - return a.z < b.z; - } - public static bool operator >(DFCoord a, DFCoord b) - { - if (a.x != b.x) return (a.x > b.x); - if (a.y != b.y) return (a.y > b.y); - return a.z > b.z; - } - public static DFCoord operator +(DFCoord a, DFCoord b) - { - return new DFCoord(a.x + b.x, a.y + b.y, a.z + b.z); - } - public static DFCoord operator -(DFCoord a, DFCoord b) - { - return new DFCoord(a.x - b.x, a.y - b.y, a.z - b.z); - } - public static DFCoord operator /(DFCoord a, int number) - { - return new DFCoord((a.x < 0 ? a.x - number : a.x) / number, (a.y < 0 ? a.y - number : a.y) / number, a.z); - } - public static DFCoord operator *(DFCoord a, int number) - { - return new DFCoord(a.x * number, a.y * number, a.z); - } - public static DFCoord operator %(DFCoord a, int number) - { - return new DFCoord((a.x + number) % number, (a.y + number) % number, a.z); - } - public static DFCoord operator -(DFCoord a, int number) - { - return new DFCoord(a.x, a.y, a.z - number); - } - public static DFCoord operator +(DFCoord a, int number) - { - return new DFCoord(a.x, a.y, a.z + number); - } - } - public struct DFCoord2d - { - public int x; - public int y; - - public DFCoord2d(int _x, int _y) - { - x = _x; - y = _y; - } - - public bool isValid() - { - return x != -30000; - } - public void clear() - { - x = y = -30000; - } - - public static bool operator <(DFCoord2d a, DFCoord2d b) - { - if (a.x != b.x) return (a.x < b.x); - return a.y < b.y; - } - public static bool operator >(DFCoord2d a, DFCoord2d b) - { - if (a.x != b.x) return (a.x > b.x); - return a.y > b.y; - } - - public static DFCoord2d operator +(DFCoord2d a, DFCoord2d b) - { - return new DFCoord2d(a.x + b.x, a.y + b.y); - } - public static DFCoord2d operator -(DFCoord2d a, DFCoord2d b) - { - return new DFCoord2d(a.x - b.x, a.y - b.y); - } - - - public static DFCoord2d operator /(DFCoord2d a, int number) - { - return new DFCoord2d((a.x < 0 ? a.x - number : a.x) / number, (a.y < 0 ? a.y - number : a.y) / number); - } - public static DFCoord2d operator *(DFCoord2d a, int number) - { - return new DFCoord2d(a.x * number, a.y * number); - } - public static DFCoord2d operator %(DFCoord2d a, int number) - { - return new DFCoord2d((a.x + number) % number, (a.y + number) % number); - } - public static DFCoord2d operator &(DFCoord2d a, int number) - { - return new DFCoord2d(a.x & number, a.y & number); - } - } - /* Protocol description: - * - * 1. Handshake - * - * Client initiates connection by sending the handshake - * request header. The server responds with the response - * magic. Currently both versions must be 1. - * - * 2. Interaction - * - * Requests are done by exchanging messages between the - * client and the server. Messages consist of a serialized - * protobuf message preceeded by RPCMessageHeader. The size - * field specifies the length of the protobuf part. - * - * NOTE: As a special exception, RPC_REPLY_FAIL uses the size - * field to hold the error code directly. - * - * Every callable function is assigned a non-negative id by - * the server. Id 0 is reserved for BindMethod, which can be - * used to request any other id by function name. Id 1 is - * RunCommand, used to call console commands remotely. - * - * The client initiates every call by sending a message with - * appropriate function id and input arguments. The server - * responds with zero or more RPC_REPLY_TEXT:CoreTextNotification - * messages, followed by RPC_REPLY_RESULT containing the output - * of the function if it succeeded, or RPC_REPLY_FAIL with the - * error code if it did not. - * - * 3. Disconnect - * - * The client terminates the connection by sending an - * RPC_REQUEST_QUIT header with zero size and immediately - * closing the socket. - */ - - public class RPCFunctionBase - { - - public message_type p_in_template; - public message_type p_out_template; - - public message_type make_in() - { - return (message_type)Activator.CreateInstance(p_in_template.GetType()); - } - - public message_type input() - { - if (p_in == null) p_in = make_in(); - return p_in; - } - - public message_type make_out() - { - return (message_type)Activator.CreateInstance(p_out_template.GetType()); - } - - public message_type output() - { - if (p_out == null) p_out = make_out(); - return p_out; - } - - public void reset(bool free = false) - { - if (free) - { - p_in = null; - p_out = null; - } - else - { - if (p_in != null) - p_in = (message_type)Activator.CreateInstance(p_in.GetType()); - if (p_out != null) - p_out = (message_type)Activator.CreateInstance(p_out.GetType()); - } - } - - public RPCFunctionBase(message_type input, message_type output) - { - p_in_template = input; - p_out_template = output; - p_in = null; - p_out = null; - } - ~RPCFunctionBase() - { - p_in = null; - p_out = null; - } - - message_type p_in; - message_type p_out; - } - - public class RemoteFunctionBase : RPCFunctionBase - { - public bool bind(RemoteClient client, string name, - string proto = "") - { - return bind(client.default_output(), client, name, proto); - } - public bool bind(color_ostream output, - RemoteClient client, string name, - string proto = "") - { - if (isValid()) - { - if (p_client == client && this.name == name && this.proto == proto) - return true; - - output.printerr("Function already bound to %s::%s\n", - this.proto, this.name); - return false; - } - - this.name = name; - this.proto = proto; - this.p_client = client; - - return client.bind(output, this, name, proto); - } - - public bool isValid() { return (id >= 0); } - - public RemoteFunctionBase(message_type input, message_type output) - : base(input, output) - { - p_client = null; - id = -1; - } - - protected color_ostream default_ostream() - { - return p_client.default_output(); - } - - bool sendRemoteMessage(Socket socket, Int16 id, MemoryStream msg) - { - List buffer = new List(); - - RPCMessageHeader header = new RPCMessageHeader(); - header.id = id; - header.size = (Int32)msg.Length; - buffer.AddRange(header.ConvertToBtyes()); - buffer.AddRange(msg.ToArray()); - - int fullsz = buffer.Count; - - int got = socket.Send(buffer.ToArray()); - return (got == fullsz); - } - - protected command_result execute(color_ostream outString, Input input, Output output) - where Input : message_type, new() - where Output : message_type, new() - { - if (!isValid()) - { - outString.printerr("Calling an unbound RPC function %s::%s.\n", - this.proto, this.name); - return command_result.CR_NOT_IMPLEMENTED; - } - - if (p_client.socket == null) - { - outString.printerr("In call to %s::%s: invalid socket.\n", - this.proto, this.name); - return command_result.CR_LINK_FAILURE; - } - - MemoryStream sendStream = new MemoryStream(); - - ProtoBuf.Serializer.Serialize(sendStream, input); - - long send_size = sendStream.Length; - - if (send_size > RPCMessageHeader.MAX_MESSAGE_SIZE) - { - outString.printerr("In call to %s::%s: message too large: %d.\n", - this.proto, this.name, send_size); - return command_result.CR_LINK_FAILURE; - } - - if (!sendRemoteMessage(p_client.socket, id, sendStream)) - { - outString.printerr("In call to %s::%s: I/O error in send.\n", - this.proto, this.name); - return command_result.CR_LINK_FAILURE; - } - - color_ostream_proxy text_decoder = new color_ostream_proxy(outString); - CoreTextNotification text_data; - - output = new Output(); - //return command_result.CR_OK; - - while (true) - { - RPCMessageHeader header = new RPCMessageHeader(); - byte[] buffer = new byte[8]; - - if (!RemoteClient.readFullBuffer(p_client.socket, buffer, 8)) - { - outString.printerr("In call to %s::%s: I/O error in receive header.\n", - this.proto, this.name); - return command_result.CR_LINK_FAILURE; - } - - header.id = BitConverter.ToInt16(buffer, 0); - header.size = BitConverter.ToInt32(buffer, 4); //because something, somewhere, is fucking retarded - - //outString.print("Received %d:%d.\n", header.id, header.size); - - - if ((DFHackReplyCode)header.id == DFHackReplyCode.RPC_REPLY_FAIL) - if (header.size == (int)command_result.CR_OK) - return command_result.CR_FAILURE; - else - return (command_result)header.size; - - if (header.size < 0 || header.size > RPCMessageHeader.MAX_MESSAGE_SIZE) - { - outString.printerr("In call to %s::%s: invalid received size %d.\n", - this.proto, this.name, header.size); - return command_result.CR_LINK_FAILURE; - } - - byte[] buf = new byte[header.size]; - - if (!RemoteClient.readFullBuffer(p_client.socket, buf, header.size)) - { - outString.printerr("In call to %s::%s: I/O error in receive %d bytes of data.\n", - this.proto, this.name, header.size); - return command_result.CR_LINK_FAILURE; - } - - switch ((DFHackReplyCode)header.id) - { - case DFHackReplyCode.RPC_REPLY_RESULT: - output = ProtoBuf.Serializer.Deserialize(new MemoryStream(buf)); - if (output == null) - { - outString.printerr("In call to %s::%s: error parsing received result.\n", - this.proto, this.name); - return command_result.CR_LINK_FAILURE; - } - return command_result.CR_OK; - - case DFHackReplyCode.RPC_REPLY_TEXT: - text_data = ProtoBuf.Serializer.Deserialize(new MemoryStream(buf)); - - if (text_data != null) - { - text_decoder.decode(text_data); - } - else - outString.printerr("In call to %s::%s: received invalid text data.\n", - this.proto, this.name); - break; - - default: - break; - } - } - } - - - public string name, proto; - public RemoteClient p_client; - public Int16 id; - } - - public class RemoteFunction : RemoteFunctionBase - where Input : message_type, new() - where Output : message_type, new() - { - public new Input make_in() { return (Input)(base.make_in()); } - public new Input input() { return (Input)(base.input()); } - public new Output make_out() { return (Output)(base.make_out()); } - public new Output output() { return (Output)(base.output()); } - - public RemoteFunction() : base(new Input(), new Output()) { } - - public command_result execute() - { - if (p_client == null) - return command_result.CR_NOT_IMPLEMENTED; - else - return base.execute(default_ostream(), input(), output()); - } - public command_result execute(color_ostream stream) - { - return base.execute(stream, input(), output()); - } - public command_result execute(Input input, Output output) - { - if (p_client == null) - return command_result.CR_NOT_IMPLEMENTED; - else - return base.execute(default_ostream(), input, output); - } - public command_result execute(color_ostream stream, Input input, Output output) - { - return base.execute(stream, input, output); - } - } - - public class RemoteFunction : RemoteFunctionBase - where Input : message_type, new() - { - public new Input make_in() { return (Input)(base.make_in()); } - public new Input input() { return (Input)(base.input()); } - - public RemoteFunction() : base(new Input(), new EmptyMessage()) { } - - public command_result execute() - { - if (p_client == null) - return command_result.CR_NOT_IMPLEMENTED; - else - return base.execute(default_ostream(), input(), (EmptyMessage)output()); - } - public command_result execute(color_ostream stream) - { - return base.execute(stream, input(), (EmptyMessage)output()); - } - public command_result execute(Input input) - { - if (p_client == null) - return command_result.CR_NOT_IMPLEMENTED; - else - return base.execute(default_ostream(), input, (EmptyMessage)output()); - } - public command_result execute(color_ostream stream, Input input) - { - return base.execute(stream, input, (EmptyMessage)output()); - } - }; - - public class RemoteClient - { - public static bool readFullBuffer(Socket socket, byte[] buf, int size) - { - if (!socket.Connected) - return false; - - if (size == 0) - return true; - - int cnt = socket.Receive(buf, size, SocketFlags.None); - if (cnt <= 0) return false; - - return true; - } - - public bool bind(color_ostream outStream, RemoteFunctionBase function, - string name, string proto) - { - if (!active || socket == null) - return false; - - bind_call.reset(); - - { - var input = bind_call.input(); - - input.method = name; - if (proto.Length == 0) - input.plugin = proto; - input.input_msg = function.p_in_template.GetType().ToString(); - input.output_msg = function.p_out_template.GetType().ToString(); - } - - if (bind_call.execute(outStream) != command_result.CR_OK) - return false; - - function.id = (Int16)bind_call.output().assigned_id; - - return true; - } - - public RemoteClient(color_ostream default_output = null) - { - p_default_output = default_output; - active = false; - socket = null; - suspend_ready = false; - - if (p_default_output == null) - { - delete_output = true; - p_default_output = new color_ostream(); - } - else - delete_output = false; - } - ~RemoteClient() - { - disconnect(); - socket = null; - - if (delete_output) - p_default_output = null; - } - - public static int GetDefaultPort() - { - string port = System.Environment.GetEnvironmentVariable("DFHACK_PORT"); - if (port == null) port = "0"; - - int portval = Int32.Parse(port); - if (portval <= 0) - return 5000; - else - return portval; - } - - public color_ostream default_output() - { - return p_default_output; - } - - private static Socket ConnectSocket(string server, int port) - { - Socket s = null; - IPHostEntry hostEntry = null; - - // Get host related information. - hostEntry = Dns.GetHostEntry(server); - - // Loop through the AddressList to obtain the supported AddressFamily. This is to avoid - // an exception that occurs when the host IP Address is not compatible with the address family - // (typical in the IPv6 case). - foreach (IPAddress address in hostEntry.AddressList) - { - IPEndPoint ipe = new IPEndPoint(address, port); - Socket tempSocket = - new Socket(ipe.AddressFamily, SocketType.Stream, ProtocolType.Tcp); - - tempSocket.Connect(ipe); - - if (tempSocket.Connected) - { - s = tempSocket; - break; - } - else - { - continue; - } - } - return s; - } - - static bool partialArrayCompare(byte[] A, byte[] B) //compares the intersection of the two arrays, ignoring the rest. - { - int size = A.Length; - if (size > B.Length) size = B.Length; - for (int i = 0; i < size; i++) - { - if (A[i] != B[i]) - return false; - } - return true; - } - - public bool connect(int port = -1) - { - Debug.Assert(!active); - - if (port <= 0) - port = GetDefaultPort(); - - socket = ConnectSocket("localhost", port); - if (socket == null) - { - default_output().printerr("Could not connect to localhost: %d\n", port); - return false; - } - - active = true; - - List headerList = new List(); - - headerList.AddRange(Encoding.ASCII.GetBytes(RPCHandshakeHeader.REQUEST_MAGIC)); - headerList.AddRange(BitConverter.GetBytes((Int32)1)); - - byte[] header = headerList.ToArray(); - - if (socket.Send(header) != header.Length) - { - default_output().printerr("Could not send handshake header.\n"); - socket.Close(); - socket = null; - return active = false; - } - - if (!readFullBuffer(socket, header, header.Length)) - { - default_output().printerr("Could not read handshake header.\n"); - socket.Close(); - socket = null; - return active = false; - } - - if (!partialArrayCompare(header, Encoding.ASCII.GetBytes(RPCHandshakeHeader.RESPONSE_MAGIC)) || - BitConverter.ToInt32(header, Encoding.ASCII.GetBytes(RPCHandshakeHeader.RESPONSE_MAGIC).Length) != 1) - { - default_output().printerr("Invalid handshake response: %s.\n", System.Text.Encoding.Default.GetString(header)); - socket.Close(); - socket = null; - return active = false; - } - - if (bind_call == null) bind_call = new RemoteFunction(); - bind_call.name = "BindMethod"; - bind_call.p_client = this; - bind_call.id = 0; - - if (runcmd_call == null) runcmd_call = new RemoteFunction(); - runcmd_call.name = "RunCommand"; - runcmd_call.p_client = this; - runcmd_call.id = 1; - - return true; - } - - public void disconnect() - { - if (active && socket != null) - { - RPCMessageHeader header; - header.id = (Int16)DFHackReplyCode.RPC_REQUEST_QUIT; - header.size = 0; - if (socket.Send(header.ConvertToBtyes()) != header.ConvertToBtyes().Length) - default_output().printerr("Could not send the disconnect message.\n"); - socket.Close(); - } - socket = null; - - } - - public command_result run_command(string cmd, List args) - { - return run_command(default_output(), cmd, args); - } - public command_result run_command(color_ostream output, string cmd, List args) - { - if (!active || socket == null) - { - output.printerr("In RunCommand: client connection not valid.\n"); - return command_result.CR_FAILURE; - } - - runcmd_call.reset(); - - runcmd_call.input().command = cmd; - for (int i = 0; i < args.Count; i++) - runcmd_call.input().arguments.Add(args[i]); - - return runcmd_call.execute(output); - } - - // // For executing multiple calls in rapid succession. - // // Best used via RemoteSuspender. - public int suspend_game() - { - if (!active) - return -1; - - if (!suspend_ready) - { - suspend_ready = true; - suspend_call.bind(this, "CoreSuspend"); - resume_call.bind(this, "CoreResume"); - } - - if (suspend_call.execute(default_output()) == command_result.CR_OK) - return suspend_call.output().value; - else - return -1; - } - public int resume_game() - { - if (!suspend_ready) - return -1; - - if (resume_call.execute(default_output()) == command_result.CR_OK) - return resume_call.output().value; - else - return -1; - } - - //private: - bool active, delete_output; - public Socket socket; - color_ostream p_default_output; - - RemoteFunction bind_call; - RemoteFunction runcmd_call; - - bool suspend_ready; - RemoteFunction suspend_call = new RemoteFunction(); - RemoteFunction resume_call = new RemoteFunction(); - } - - class RemoteSuspender - { - RemoteClient client; - public RemoteSuspender(RemoteClient clientIn) - { - client = clientIn; - if (client == null || client.suspend_game() <= 0) client = null; - } - ~RemoteSuspender() - { - if (client != null) client.resume_game(); - } - }; -} diff --git a/clients/unity/simple_sample/Assets/RemoteClient/RemoteClient.cs.meta b/clients/unity/simple_sample/Assets/RemoteClient/RemoteClient.cs.meta deleted file mode 100644 index 963cec8cc..000000000 --- a/clients/unity/simple_sample/Assets/RemoteClient/RemoteClient.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 73b3c5754a89e43409dcf23866eb0484 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/clients/unity/simple_sample/Assets/RemoteClient/Tools.cs b/clients/unity/simple_sample/Assets/RemoteClient/Tools.cs deleted file mode 100644 index d39110ba9..000000000 --- a/clients/unity/simple_sample/Assets/RemoteClient/Tools.cs +++ /dev/null @@ -1,690 +0,0 @@ -#region Usings -using System; -using System.IO; -using System.Text; -using System.Text.RegularExpressions; -#endregion - -namespace AT.MIN -{ - public static class Tools - { - #region Public Methods - #region IsNumericType - /// - /// Determines whether the specified value is of numeric type. - /// - /// The object to check. - /// - /// true if o is a numeric type; otherwise, false. - /// - public static bool IsNumericType( object o ) - { - return ( o is byte || - o is sbyte || - o is short || - o is ushort || - o is int || - o is uint || - o is long || - o is ulong || - o is float || - o is double || - o is decimal ); - } - #endregion - #region IsPositive - /// - /// Determines whether the specified value is positive. - /// - /// The value. - /// if set to true treats 0 as positive. - /// - /// true if the specified value is positive; otherwise, false. - /// - public static bool IsPositive( object Value, bool ZeroIsPositive ) - { - switch ( Type.GetTypeCode( Value.GetType() ) ) - { - case TypeCode.SByte: - return ( ZeroIsPositive ? (sbyte)Value >= 0 : (sbyte)Value > 0 ); - case TypeCode.Int16: - return ( ZeroIsPositive ? (short)Value >= 0 : (short)Value > 0 ); - case TypeCode.Int32: - return ( ZeroIsPositive ? (int)Value >= 0 : (int)Value > 0 ); - case TypeCode.Int64: - return ( ZeroIsPositive ? (long)Value >= 0 : (long)Value > 0 ); - case TypeCode.Single: - return ( ZeroIsPositive ? (float)Value >= 0 : (float)Value > 0 ); - case TypeCode.Double: - return ( ZeroIsPositive ? (double)Value >= 0 : (double)Value > 0 ); - case TypeCode.Decimal: - return ( ZeroIsPositive ? (decimal)Value >= 0 : (decimal)Value > 0 ); - case TypeCode.Byte: - return ( ZeroIsPositive ? true : (byte)Value > 0 ); - case TypeCode.UInt16: - return ( ZeroIsPositive ? true : (ushort)Value > 0 ); - case TypeCode.UInt32: - return ( ZeroIsPositive ? true : (uint)Value > 0 ); - case TypeCode.UInt64: - return ( ZeroIsPositive ? true : (ulong)Value > 0 ); - case TypeCode.Char: - return ( ZeroIsPositive ? true : (char)Value != '\0' ); - default: - return false; - } - } - #endregion - #region ToUnsigned - /// - /// Converts the specified values boxed type to its correpsonding unsigned - /// type. - /// - /// The value. - /// A boxed numeric object whos type is unsigned. - public static object ToUnsigned( object Value ) - { - switch ( Type.GetTypeCode( Value.GetType() ) ) - { - case TypeCode.SByte: - return (byte)( (sbyte)Value ); - case TypeCode.Int16: - return (ushort)( (short)Value ); - case TypeCode.Int32: - return (uint)( (int)Value ); - case TypeCode.Int64: - return (ulong)( (long)Value ); - - case TypeCode.Byte: - return Value; - case TypeCode.UInt16: - return Value; - case TypeCode.UInt32: - return Value; - case TypeCode.UInt64: - return Value; - - case TypeCode.Single: - return (UInt32)( (float)Value ); - case TypeCode.Double: - return (ulong)( (double)Value ); - case TypeCode.Decimal: - return (ulong)( (decimal)Value ); - - default: - return null; - } - } - #endregion - #region ToInteger - /// - /// Converts the specified values boxed type to its correpsonding integer - /// type. - /// - /// The value. - /// A boxed numeric object whos type is an integer type. - public static object ToInteger( object Value, bool Round ) - { - switch ( Type.GetTypeCode( Value.GetType() ) ) - { - case TypeCode.SByte: - return Value; - case TypeCode.Int16: - return Value; - case TypeCode.Int32: - return Value; - case TypeCode.Int64: - return Value; - - case TypeCode.Byte: - return Value; - case TypeCode.UInt16: - return Value; - case TypeCode.UInt32: - return Value; - case TypeCode.UInt64: - return Value; - - case TypeCode.Single: - return ( Round ? (int)Math.Round( (float)Value ) : (int)( (float)Value ) ); - case TypeCode.Double: - return ( Round ? (long)Math.Round( (double)Value ) : (long)( (double)Value ) ); - case TypeCode.Decimal: - return ( Round ? Math.Round( (decimal)Value ) : (decimal)Value ); - - default: - return null; - } - } - #endregion - #region UnboxToLong - public static long UnboxToLong( object Value, bool Round ) - { - switch ( Type.GetTypeCode( Value.GetType() ) ) - { - case TypeCode.SByte: - return (long)( (sbyte)Value ); - case TypeCode.Int16: - return (long)( (short)Value ); - case TypeCode.Int32: - return (long)( (int)Value ); - case TypeCode.Int64: - return (long)Value; - - case TypeCode.Byte: - return (long)( (byte)Value ); - case TypeCode.UInt16: - return (long)( (ushort)Value ); - case TypeCode.UInt32: - return (long)( (uint)Value ); - case TypeCode.UInt64: - return (long)( (ulong)Value ); - - case TypeCode.Single: - return ( Round ? (long)Math.Round( (float)Value ) : (long)( (float)Value ) ); - case TypeCode.Double: - return ( Round ? (long)Math.Round( (double)Value ) : (long)( (double)Value ) ); - case TypeCode.Decimal: - return ( Round ? (long)Math.Round( (decimal)Value ) : (long)( (decimal)Value ) ); - - default: - return 0; - } - } - #endregion - #region ReplaceMetaChars - /// - /// Replaces the string representations of meta chars with their corresponding - /// character values. - /// - /// The input. - /// A string with all string meta chars are replaced - public static string ReplaceMetaChars( string input ) - { - return Regex.Replace( input, @"(\\)(\d{3}|[^\d])?", new MatchEvaluator( ReplaceMetaCharsMatch ) ); - } - private static string ReplaceMetaCharsMatch( Match m ) - { - // convert octal quotes (like \040) - if ( m.Groups[2].Length == 3 ) - return Convert.ToChar( Convert.ToByte( m.Groups[2].Value, 8 ) ).ToString(); - else - { - // convert all other special meta characters - //TODO: \xhhh hex and possible dec !! - switch ( m.Groups[2].Value ) - { - case "0": // null - return "\0"; - case "a": // alert (beep) - return "\a"; - case "b": // BS - return "\b"; - case "f": // FF - return "\f"; - case "v": // vertical tab - return "\v"; - case "r": // CR - return "\r"; - case "n": // LF - return "\n"; - case "t": // Tab - return "\t"; - default: - // if neither an octal quote nor a special meta character - // so just remove the backslash - return m.Groups[2].Value; - } - } - } - #endregion - #region printf - public static void printf( string Format, params object[] Parameters ) - { - Console.Write( Tools.sprintf( Format, Parameters ) ); - } - #endregion - #region fprintf - public static void fprintf( TextWriter Destination, string Format, params object[] Parameters ) - { - Destination.Write( Tools.sprintf( Format, Parameters ) ); - } - #endregion - #region sprintf - public static string sprintf( string Format, params object[] Parameters ) - { - #region Variables - StringBuilder f = new StringBuilder(); - Regex r = new Regex( @"\%(\d*\$)?([\'\#\-\+ ]*)(\d*)(?:\.(\d+))?([hl])?([dioxXucsfeEgGpn%])" ); - //"%[parameter][flags][width][.precision][length]type" - Match m = null; - string w = String.Empty; - int defaultParamIx = 0; - int paramIx; - object o = null; - - bool flagLeft2Right = false; - bool flagAlternate = false; - bool flagPositiveSign = false; - bool flagPositiveSpace = false; - bool flagZeroPadding = false; - bool flagGroupThousands = false; - - int fieldLength = 0; - int fieldPrecision = 0; - char shortLongIndicator = '\0'; - char formatSpecifier = '\0'; - char paddingCharacter = ' '; - #endregion - - // find all format parameters in format string - f.Append( Format ); - m = r.Match( f.ToString() ); - while ( m.Success ) - { - #region parameter index - paramIx = defaultParamIx; - if ( m.Groups[1] != null && m.Groups[1].Value.Length > 0 ) - { - string val = m.Groups[1].Value.Substring( 0, m.Groups[1].Value.Length - 1 ); - paramIx = Convert.ToInt32( val ) - 1; - }; - #endregion - - #region format flags - // extract format flags - flagAlternate = false; - flagLeft2Right = false; - flagPositiveSign = false; - flagPositiveSpace = false; - flagZeroPadding = false; - flagGroupThousands = false; - if ( m.Groups[2] != null && m.Groups[2].Value.Length > 0 ) - { - string flags = m.Groups[2].Value; - - flagAlternate = ( flags.IndexOf( '#' ) >= 0 ); - flagLeft2Right = ( flags.IndexOf( '-' ) >= 0 ); - flagPositiveSign = ( flags.IndexOf( '+' ) >= 0 ); - flagPositiveSpace = ( flags.IndexOf( ' ' ) >= 0 ); - flagGroupThousands = ( flags.IndexOf( '\'' ) >= 0 ); - - // positive + indicator overrides a - // positive space character - if ( flagPositiveSign && flagPositiveSpace ) - flagPositiveSpace = false; - } - #endregion - - #region field length - // extract field length and - // pading character - paddingCharacter = ' '; - fieldLength = int.MinValue; - if ( m.Groups[3] != null && m.Groups[3].Value.Length > 0 ) - { - fieldLength = Convert.ToInt32( m.Groups[3].Value ); - flagZeroPadding = ( m.Groups[3].Value[0] == '0' ); - } - #endregion - - if ( flagZeroPadding ) - paddingCharacter = '0'; - - // left2right allignment overrides zero padding - if ( flagLeft2Right && flagZeroPadding ) - { - flagZeroPadding = false; - paddingCharacter = ' '; - } - - #region field precision - // extract field precision - fieldPrecision = int.MinValue; - if ( m.Groups[4] != null && m.Groups[4].Value.Length > 0 ) - fieldPrecision = Convert.ToInt32( m.Groups[4].Value ); - #endregion - - #region short / long indicator - // extract short / long indicator - shortLongIndicator = Char.MinValue; - if ( m.Groups[5] != null && m.Groups[5].Value.Length > 0 ) - shortLongIndicator = m.Groups[5].Value[0]; - #endregion - - #region format specifier - // extract format - formatSpecifier = Char.MinValue; - if ( m.Groups[6] != null && m.Groups[6].Value.Length > 0 ) - formatSpecifier = m.Groups[6].Value[0]; - #endregion - - // default precision is 6 digits if none is specified except - if ( fieldPrecision == int.MinValue && - formatSpecifier != 's' && - formatSpecifier != 'c' && - Char.ToUpper( formatSpecifier ) != 'X' && - formatSpecifier != 'o' ) - fieldPrecision = 6; - - #region get next value parameter - // get next value parameter and convert value parameter depending on short / long indicator - if ( Parameters == null || paramIx >= Parameters.Length ) - o = null; - else - { - o = Parameters[paramIx]; - - if ( shortLongIndicator == 'h' ) - { - if ( o is int ) - o = (short)( (int)o ); - else if ( o is long ) - o = (short)( (long)o ); - else if ( o is uint ) - o = (ushort)( (uint)o ); - else if ( o is ulong ) - o = (ushort)( (ulong)o ); - } - else if ( shortLongIndicator == 'l' ) - { - if ( o is short ) - o = (long)( (short)o ); - else if ( o is int ) - o = (long)( (int)o ); - else if ( o is ushort ) - o = (ulong)( (ushort)o ); - else if ( o is uint ) - o = (ulong)( (uint)o ); - } - } - #endregion - - // convert value parameters to a string depending on the formatSpecifier - w = String.Empty; - switch ( formatSpecifier ) - { - #region % - character - case '%': // % character - w = "%"; - break; - #endregion - #region d - integer - case 'd': // integer - w = FormatNumber( ( flagGroupThousands ? "n" : "d" ), flagAlternate, - fieldLength, int.MinValue, flagLeft2Right, - flagPositiveSign, flagPositiveSpace, - paddingCharacter, o ); - defaultParamIx++; - break; - #endregion - #region i - integer - case 'i': // integer - goto case 'd'; - #endregion - #region o - octal integer - case 'o': // octal integer - no leading zero - w = FormatOct( "o", flagAlternate, - fieldLength, int.MinValue, flagLeft2Right, - paddingCharacter, o ); - defaultParamIx++; - break; - #endregion - #region x - hex integer - case 'x': // hex integer - no leading zero - w = FormatHex( "x", flagAlternate, - fieldLength, fieldPrecision, flagLeft2Right, - paddingCharacter, o ); - defaultParamIx++; - break; - #endregion - #region X - hex integer - case 'X': // same as x but with capital hex characters - w = FormatHex( "X", flagAlternate, - fieldLength, fieldPrecision, flagLeft2Right, - paddingCharacter, o ); - defaultParamIx++; - break; - #endregion - #region u - unsigned integer - case 'u': // unsigned integer - w = FormatNumber( ( flagGroupThousands ? "n" : "d" ), flagAlternate, - fieldLength, int.MinValue, flagLeft2Right, - false, false, - paddingCharacter, ToUnsigned( o ) ); - defaultParamIx++; - break; - #endregion - #region c - character - case 'c': // character - if ( IsNumericType( o ) ) - w = Convert.ToChar( o ).ToString(); - else if ( o is char ) - w = ( (char)o ).ToString(); - else if ( o is string && ( (string)o ).Length > 0 ) - w = ( (string)o )[0].ToString(); - defaultParamIx++; - break; - #endregion - #region s - string - case 's': // string - //string t = "{0" + ( fieldLength != int.MinValue ? "," + ( flagLeft2Right ? "-" : String.Empty ) + fieldLength.ToString() : String.Empty ) + ":s}"; - w = o.ToString(); - if ( fieldPrecision >= 0 ) - w = w.Substring( 0, fieldPrecision ); - - if ( fieldLength != int.MinValue ) - if ( flagLeft2Right ) - w = w.PadRight( fieldLength, paddingCharacter ); - else - w = w.PadLeft( fieldLength, paddingCharacter ); - defaultParamIx++; - break; - #endregion - #region f - double number - case 'f': // double - w = FormatNumber( ( flagGroupThousands ? "n" : "f" ), flagAlternate, - fieldLength, fieldPrecision, flagLeft2Right, - flagPositiveSign, flagPositiveSpace, - paddingCharacter, o ); - defaultParamIx++; - break; - #endregion - #region e - exponent number - case 'e': // double / exponent - w = FormatNumber( "e", flagAlternate, - fieldLength, fieldPrecision, flagLeft2Right, - flagPositiveSign, flagPositiveSpace, - paddingCharacter, o ); - defaultParamIx++; - break; - #endregion - #region E - exponent number - case 'E': // double / exponent - w = FormatNumber( "E", flagAlternate, - fieldLength, fieldPrecision, flagLeft2Right, - flagPositiveSign, flagPositiveSpace, - paddingCharacter, o ); - defaultParamIx++; - break; - #endregion - #region g - general number - case 'g': // double / exponent - w = FormatNumber( "g", flagAlternate, - fieldLength, fieldPrecision, flagLeft2Right, - flagPositiveSign, flagPositiveSpace, - paddingCharacter, o ); - defaultParamIx++; - break; - #endregion - #region G - general number - case 'G': // double / exponent - w = FormatNumber( "G", flagAlternate, - fieldLength, fieldPrecision, flagLeft2Right, - flagPositiveSign, flagPositiveSpace, - paddingCharacter, o ); - defaultParamIx++; - break; - #endregion - #region p - pointer - case 'p': // pointer - if ( o is IntPtr ) - w = "0x" + ( (IntPtr)o ).ToString( "x" ); - defaultParamIx++; - break; - #endregion - #region n - number of processed chars so far - case 'n': // number of characters so far - w = FormatNumber( "d", flagAlternate, - fieldLength, int.MinValue, flagLeft2Right, - flagPositiveSign, flagPositiveSpace, - paddingCharacter, m.Index ); - break; - #endregion - default: - w = String.Empty; - defaultParamIx++; - break; - } - - // replace format parameter with parameter value - // and start searching for the next format parameter - // AFTER the position of the current inserted value - // to prohibit recursive matches if the value also - // includes a format specifier - f.Remove( m.Index, m.Length ); - f.Insert( m.Index, w ); - m = r.Match( f.ToString(), m.Index + w.Length ); - } - - return f.ToString(); - } - #endregion - #endregion - - #region Private Methods - #region FormatOCT - private static string FormatOct( string NativeFormat, bool Alternate, - int FieldLength, int FieldPrecision, - bool Left2Right, - char Padding, object Value ) - { - string w = String.Empty; - string lengthFormat = "{0" + ( FieldLength != int.MinValue ? - "," + ( Left2Right ? - "-" : - String.Empty ) + FieldLength.ToString() : - String.Empty ) + "}"; - - if ( IsNumericType( Value ) ) - { - w = Convert.ToString( UnboxToLong( Value, true ), 8 ); - - if ( Left2Right || Padding == ' ' ) - { - if ( Alternate && w != "0" ) - w = "0" + w; - w = String.Format( lengthFormat, w ); - } - else - { - if ( FieldLength != int.MinValue ) - w = w.PadLeft( FieldLength - ( Alternate && w != "0" ? 1 : 0 ), Padding ); - if ( Alternate && w != "0" ) - w = "0" + w; - } - } - - return w; - } - #endregion - #region FormatHEX - private static string FormatHex( string NativeFormat, bool Alternate, - int FieldLength, int FieldPrecision, - bool Left2Right, - char Padding, object Value ) - { - string w = String.Empty; - string lengthFormat = "{0" + ( FieldLength != int.MinValue ? - "," + ( Left2Right ? - "-" : - String.Empty ) + FieldLength.ToString() : - String.Empty ) + "}"; - string numberFormat = "{0:" + NativeFormat + ( FieldPrecision != int.MinValue ? - FieldPrecision.ToString() : - String.Empty ) + "}"; - - if ( IsNumericType( Value ) ) - { - w = String.Format( numberFormat, Value ); - - if ( Left2Right || Padding == ' ' ) - { - if ( Alternate ) - w = ( NativeFormat == "x" ? "0x" : "0X" ) + w; - w = String.Format( lengthFormat, w ); - } - else - { - if ( FieldLength != int.MinValue ) - w = w.PadLeft( FieldLength - ( Alternate ? 2 : 0 ), Padding ); - if ( Alternate ) - w = ( NativeFormat == "x" ? "0x" : "0X" ) + w; - } - } - - return w; - } - #endregion - #region FormatNumber - private static string FormatNumber( string NativeFormat, bool Alternate, - int FieldLength, int FieldPrecision, - bool Left2Right, - bool PositiveSign, bool PositiveSpace, - char Padding, object Value ) - { - string w = String.Empty; - string lengthFormat = "{0" + ( FieldLength != int.MinValue ? - "," + ( Left2Right ? - "-" : - String.Empty ) + FieldLength.ToString() : - String.Empty ) + "}"; - string numberFormat = "{0:" + NativeFormat + ( FieldPrecision != int.MinValue ? - FieldPrecision.ToString() : - "0" ) + "}"; - - if ( IsNumericType( Value ) ) - { - w = String.Format( numberFormat, Value ); - - if ( Left2Right || Padding == ' ' ) - { - if ( IsPositive( Value, true ) ) - w = ( PositiveSign ? - "+" : ( PositiveSpace ? " " : String.Empty ) ) + w; - w = String.Format( lengthFormat, w ); - } - else - { - if ( w.StartsWith( "-" ) ) - w = w.Substring( 1 ); - if ( FieldLength != int.MinValue ) - w = w.PadLeft( FieldLength - 1, Padding ); - if ( IsPositive( Value, true ) ) - w = ( PositiveSign ? - "+" : ( PositiveSpace ? - " " : ( FieldLength != int.MinValue ? - Padding.ToString() : String.Empty ) ) ) + w; - else - w = "-" + w; - } - } - - return w; - } - #endregion - #endregion - } -} - - diff --git a/clients/unity/simple_sample/Assets/RemoteClient/Tools.cs.meta b/clients/unity/simple_sample/Assets/RemoteClient/Tools.cs.meta deleted file mode 100644 index 42106832f..000000000 --- a/clients/unity/simple_sample/Assets/RemoteClient/Tools.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 364a32494f42e934bae30ff47badc45a -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/clients/unity/simple_sample/Assets/Start.unity b/clients/unity/simple_sample/Assets/Start.unity deleted file mode 100644 index a9385d995..000000000 --- a/clients/unity/simple_sample/Assets/Start.unity +++ /dev/null @@ -1,1053 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!29 &1 -SceneSettings: - m_ObjectHideFlags: 0 - m_PVSData: - m_QueryMode: 1 - m_PVSObjectsArray: [] - m_PVSPortalsArray: [] - m_OcclusionBakeSettings: - viewCellSize: 1 - bakeMode: 2 - memoryUsage: 10485760 ---- !u!104 &2 -RenderSettings: - m_Fog: 0 - m_FogColor: {r: .5, g: .5, b: .5, a: 1} - m_FogMode: 3 - m_FogDensity: .00999999978 - m_LinearFogStart: 0 - m_LinearFogEnd: 300 - m_AmbientLight: {r: .200000003, g: .200000003, b: .200000003, a: 1} - m_SkyboxMaterial: {fileID: 0} - m_HaloStrength: .5 - m_FlareStrength: 1 - m_HaloTexture: {fileID: 0} - m_SpotCookie: {fileID: 0} - m_ObjectHideFlags: 0 ---- !u!127 &3 -LevelGameManager: - m_ObjectHideFlags: 0 ---- !u!157 &4 -LightmapSettings: - m_ObjectHideFlags: 0 - m_LightProbes: {fileID: 0} - m_Lightmaps: [] - m_LightmapsMode: 1 - m_BakedColorSpace: 0 - m_UseDualLightmapsInForward: 0 - m_LightmapEditorSettings: - m_Resolution: 50 - m_LastUsedResolution: 0 - m_TextureWidth: 1024 - m_TextureHeight: 1024 - m_BounceBoost: 1 - m_BounceIntensity: 1 - m_SkyLightColor: {r: .860000014, g: .930000007, b: 1, a: 1} - m_SkyLightIntensity: 0 - m_Quality: 0 - m_Bounces: 1 - m_FinalGatherRays: 1000 - m_FinalGatherContrastThreshold: .0500000007 - m_FinalGatherGradientThreshold: 0 - m_FinalGatherInterpolationPoints: 15 - m_AOAmount: 0 - m_AOMaxDistance: .100000001 - m_AOContrast: 1 - m_LODSurfaceMappingDistance: 1 - m_Padding: 0 - m_TextureCompression: 0 - m_LockAtlas: 0 ---- !u!196 &5 -NavMeshSettings: - m_ObjectHideFlags: 0 - m_BuildSettings: - agentRadius: .5 - agentHeight: 2 - agentSlope: 45 - agentClimb: .400000006 - ledgeDropHeight: 0 - maxJumpAcrossDistance: 0 - accuratePlacement: 0 - minRegionArea: 2 - widthInaccuracy: 16.666666 - heightInaccuracy: 10 - m_NavMesh: {fileID: 0} ---- !u!43 &42309399 -Mesh: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_Name: - serializedVersion: 8 - m_SubMeshes: - - serializedVersion: 2 - firstByte: 0 - indexCount: 2364 - topology: 0 - firstVertex: 0 - vertexCount: 1576 - localAABB: - m_Center: {x: 7.5, y: 0, z: -7.5} - m_Extent: {x: 8, y: .5, z: 8} - m_Shapes: [] - m_ShapeVertices: [] - m_MeshCompression: 0 - m_StreamCompression: 0 - m_IsReadable: 1 - m_KeepVertices: 0 - m_KeepIndices: 0 - m_IndexBuffer: 000001000200010003000200040005000600050007000600080009000a0009000b000a000c000d000e000d000f000e00100011001200110013001200140015001600150017001600180019001a0019001b001a001c001d001e001d001f001e00200021002200210023002200240025002600250027002600280029002a0029002b002a002c002d002e002d002f002e00300031003200310033003200340035003600350037003600380039003a0039003b003a003c003d003e003d003f003e00400041004200410043004200440045004600450047004600480049004a0049004b004a004c004d004e004d004f004e00500051005200510053005200540055005600550057005600580059005a0059005b005a005c005d005e005d005f005e00600061006200610063006200640065006600650067006600680069006a0069006b006a006c006d006e006d006f006e00700071007200710073007200740075007600750077007600780079007a0079007b007a007c007d007e007d007f007e00800081008200810083008200840085008600850087008600880089008a0089008b008a008c008d008e008d008f008e00900091009200910093009200940095009600950097009600980099009a0099009b009a009c009d009e009d009f009e00a000a100a200a100a300a200a400a500a600a500a700a600a800a900aa00a900ab00aa00ac00ad00ae00ad00af00ae00b000b100b200b100b300b200b400b500b600b500b700b600b800b900ba00b900bb00ba00bc00bd00be00bd00bf00be00c000c100c200c100c300c200c400c500c600c500c700c600c800c900ca00c900cb00ca00cc00cd00ce00cd00cf00ce00d000d100d200d100d300d200d400d500d600d500d700d600d800d900da00d900db00da00dc00dd00de00dd00df00de00e000e100e200e100e300e200e400e500e600e500e700e600e800e900ea00e900eb00ea00ec00ed00ee00ed00ef00ee00f000f100f200f100f300f200f400f500f600f500f700f600f800f900fa00f900fb00fa00fc00fd00fe00fd00ff00fe00000101010201010103010201040105010601050107010601080109010a0109010b010a010c010d010e010d010f010e01100111011201110113011201140115011601150117011601180119011a0119011b011a011c011d011e011d011f011e01200121012201210123012201240125012601250127012601280129012a0129012b012a012c012d012e012d012f012e01300131013201310133013201340135013601350137013601380139013a0139013b013a013c013d013e013d013f013e01400141014201410143014201440145014601450147014601480149014a0149014b014a014c014d014e014d014f014e01500151015201510153015201540155015601550157015601580159015a0159015b015a015c015d015e015d015f015e01600161016201610163016201640165016601650167016601680169016a0169016b016a016c016d016e016d016f016e01700171017201710173017201740175017601750177017601780179017a0179017b017a017c017d017e017d017f017e01800181018201810183018201840185018601850187018601880189018a0189018b018a018c018d018e018d018f018e01900191019201910193019201940195019601950197019601980199019a0199019b019a019c019d019e019d019f019e01a001a101a201a101a301a201a401a501a601a501a701a601a801a901aa01a901ab01aa01ac01ad01ae01ad01af01ae01b001b101b201b101b301b201b401b501b601b501b701b601b801b901ba01b901bb01ba01bc01bd01be01bd01bf01be01c001c101c201c101c301c201c401c501c601c501c701c601c801c901ca01c901cb01ca01cc01cd01ce01cd01cf01ce01d001d101d201d101d301d201d401d501d601d501d701d601d801d901da01d901db01da01dc01dd01de01dd01df01de01e001e101e201e101e301e201e401e501e601e501e701e601e801e901ea01e901eb01ea01ec01ed01ee01ed01ef01ee01f001f101f201f101f301f201f401f501f601f501f701f601f801f901fa01f901fb01fa01fc01fd01fe01fd01ff01fe01000201020202010203020202040205020602050207020602080209020a0209020b020a020c020d020e020d020f020e02100211021202110213021202140215021602150217021602180219021a0219021b021a021c021d021e021d021f021e02200221022202210223022202240225022602250227022602280229022a0229022b022a022c022d022e022d022f022e02300231023202310233023202340235023602350237023602380239023a0239023b023a023c023d023e023d023f023e02400241024202410243024202440245024602450247024602480249024a0249024b024a024c024d024e024d024f024e02500251025202510253025202540255025602550257025602580259025a0259025b025a025c025d025e025d025f025e02600261026202610263026202640265026602650267026602680269026a0269026b026a026c026d026e026d026f026e02700271027202710273027202740275027602750277027602780279027a0279027b027a027c027d027e027d027f027e02800281028202810283028202840285028602850287028602880289028a0289028b028a028c028d028e028d028f028e02900291029202910293029202940295029602950297029602980299029a0299029b029a029c029d029e029d029f029e02a002a102a202a102a302a202a402a502a602a502a702a602a802a902aa02a902ab02aa02ac02ad02ae02ad02af02ae02b002b102b202b102b302b202b402b502b602b502b702b602b802b902ba02b902bb02ba02bc02bd02be02bd02bf02be02c002c102c202c102c302c202c402c502c602c502c702c602c802c902ca02c902cb02ca02cc02cd02ce02cd02cf02ce02d002d102d202d102d302d202d402d502d602d502d702d602d802d902da02d902db02da02dc02dd02de02dd02df02de02e002e102e202e102e302e202e402e502e602e502e702e602e802e902ea02e902eb02ea02ec02ed02ee02ed02ef02ee02f002f102f202f102f302f202f402f502f602f502f702f602f802f902fa02f902fb02fa02fc02fd02fe02fd02ff02fe02000301030203010303030203040305030603050307030603080309030a0309030b030a030c030d030e030d030f030e03100311031203110313031203140315031603150317031603180319031a0319031b031a031c031d031e031d031f031e03200321032203210323032203240325032603250327032603280329032a0329032b032a032c032d032e032d032f032e03300331033203310333033203340335033603350337033603380339033a0339033b033a033c033d033e033d033f033e03400341034203410343034203440345034603450347034603480349034a0349034b034a034c034d034e034d034f034e03500351035203510353035203540355035603550357035603580359035a0359035b035a035c035d035e035d035f035e03600361036203610363036203640365036603650367036603680369036a0369036b036a036c036d036e036d036f036e03700371037203710373037203740375037603750377037603780379037a0379037b037a037c037d037e037d037f037e03800381038203810383038203840385038603850387038603880389038a0389038b038a038c038d038e038d038f038e03900391039203910393039203940395039603950397039603980399039a0399039b039a039c039d039e039d039f039e03a003a103a203a103a303a203a403a503a603a503a703a603a803a903aa03a903ab03aa03ac03ad03ae03ad03af03ae03b003b103b203b103b303b203b403b503b603b503b703b603b803b903ba03b903bb03ba03bc03bd03be03bd03bf03be03c003c103c203c103c303c203c403c503c603c503c703c603c803c903ca03c903cb03ca03cc03cd03ce03cd03cf03ce03d003d103d203d103d303d203d403d503d603d503d703d603d803d903da03d903db03da03dc03dd03de03dd03df03de03e003e103e203e103e303e203e403e503e603e503e703e603e803e903ea03e903eb03ea03ec03ed03ee03ed03ef03ee03f003f103f203f103f303f203f403f503f603f503f703f603f803f903fa03f903fb03fa03fc03fd03fe03fd03ff03fe03000401040204010403040204040405040604050407040604080409040a0409040b040a040c040d040e040d040f040e04100411041204110413041204140415041604150417041604180419041a0419041b041a041c041d041e041d041f041e04200421042204210423042204240425042604250427042604280429042a0429042b042a042c042d042e042d042f042e04300431043204310433043204340435043604350437043604380439043a0439043b043a043c043d043e043d043f043e04400441044204410443044204440445044604450447044604480449044a0449044b044a044c044d044e044d044f044e04500451045204510453045204540455045604550457045604580459045a0459045b045a045c045d045e045d045f045e04600461046204610463046204640465046604650467046604680469046a0469046b046a046c046d046e046d046f046e04700471047204710473047204740475047604750477047604780479047a0479047b047a047c047d047e047d047f047e04800481048204810483048204840485048604850487048604880489048a0489048b048a048c048d048e048d048f048e04900491049204910493049204940495049604950497049604980499049a0499049b049a049c049d049e049d049f049e04a004a104a204a104a304a204a404a504a604a504a704a604a804a904aa04a904ab04aa04ac04ad04ae04ad04af04ae04b004b104b204b104b304b204b404b504b604b504b704b604b804b904ba04b904bb04ba04bc04bd04be04bd04bf04be04c004c104c204c104c304c204c404c504c604c504c704c604c804c904ca04c904cb04ca04cc04cd04ce04cd04cf04ce04d004d104d204d104d304d204d404d504d604d504d704d604d804d904da04d904db04da04dc04dd04de04dd04df04de04e004e104e204e104e304e204e404e504e604e504e704e604e804e904ea04e904eb04ea04ec04ed04ee04ed04ef04ee04f004f104f204f104f304f204f404f504f604f504f704f604f804f904fa04f904fb04fa04fc04fd04fe04fd04ff04fe04000501050205010503050205040505050605050507050605080509050a0509050b050a050c050d050e050d050f050e05100511051205110513051205140515051605150517051605180519051a0519051b051a051c051d051e051d051f051e05200521052205210523052205240525052605250527052605280529052a0529052b052a052c052d052e052d052f052e05300531053205310533053205340535053605350537053605380539053a0539053b053a053c053d053e053d053f053e05400541054205410543054205440545054605450547054605480549054a0549054b054a054c054d054e054d054f054e05500551055205510553055205540555055605550557055605580559055a0559055b055a055c055d055e055d055f055e05600561056205610563056205640565056605650567056605680569056a0569056b056a056c056d056e056d056f056e05700571057205710573057205740575057605750577057605780579057a0579057b057a057c057d057e057d057f057e05800581058205810583058205840585058605850587058605880589058a0589058b058a058c058d058e058d058f058e05900591059205910593059205940595059605950597059605980599059a0599059b059a059c059d059e059d059f059e05a005a105a205a105a305a205a405a505a605a505a705a605a805a905aa05a905ab05aa05ac05ad05ae05ad05af05ae05b005b105b205b105b305b205b405b505b605b505b705b605b805b905ba05b905bb05ba05bc05bd05be05bd05bf05be05c005c105c205c105c305c205c405c505c605c505c705c605c805c905ca05c905cb05ca05cc05cd05ce05cd05cf05ce05d005d105d205d105d305d205d405d505d605d505d705d605d805d905da05d905db05da05dc05dd05de05dd05df05de05e005e105e205e105e305e205e405e505e605e505e705e605e805e905ea05e905eb05ea05ec05ed05ee05ed05ef05ee05f005f105f205f105f305f205f405f505f605f505f705f605f805f905fa05f905fb05fa05fc05fd05fe05fd05ff05fe05000601060206010603060206040605060606050607060606080609060a0609060b060a060c060d060e060d060f060e06100611061206110613061206140615061606150617061606180619061a0619061b061a061c061d061e061d061f061e06200621062206210623062206240625062606250627062606 - m_Skin: [] - m_BindPose: [] - m_VertexData: - m_CurrentChannels: 15 - m_VertexCount: 1576 - m_Channels: - - stream: 0 - offset: 0 - format: 0 - dimension: 3 - - stream: 0 - offset: 12 - format: 0 - dimension: 3 - - stream: 0 - offset: 24 - format: 2 - dimension: 1 - - stream: 0 - offset: 28 - format: 0 - dimension: 2 - - stream: 0 - offset: 0 - format: 0 - dimension: 0 - - stream: 0 - offset: 0 - format: 0 - dimension: 0 - m_Streams: - - channelMask: 15 - offset: 0 - stride: 36 - dividerOp: 0 - frequency: 0 - - channelMask: 0 - offset: 0 - stride: 0 - dividerOp: 0 - frequency: 0 - - channelMask: 0 - offset: 0 - stride: 0 - dividerOp: 0 - frequency: 0 - - channelMask: 0 - offset: 0 - stride: 0 - dividerOp: 0 - frequency: 0 - m_DataSize: 56736 - _typelessdata: 000000bf0000003f0000003f000000000000803f00000000ffffffff00000000000000800000003f0000003f0000003f000000000000803f00000000ffffffff0000803d00000080000000bf0000003f000000bf000000000000803f00000000ffffffff00000000000080bd0000003f0000003f000000bf000000000000803f00000000ffffffff0000803d000080bd0000003f0000003f0000003f00000000000000000000803fffffffff000080bd00000080000000bf0000003f0000003f00000000000000000000803fffffffff00000080000000800000003f000000bf0000003f00000000000000000000803fffffffff000080bd000080bd000000bf000000bf0000003f00000000000000000000803fffffffff00000080000080bd000000bf0000003f0000003f000080bf0000000000000000ffffffff000088bf00000080000000bf0000003f000000bf000080bf0000000000000000ffffffff000080bf00000080000000bf000000bf0000003f000080bf0000000000000000ffffffff000088bf000080bd000000bf000000bf000000bf000080bf0000000000000000ffffffff000080bf000080bd000000bf0000003f000000bf000000000000803f00000000ffffffff00000000000080bd0000003f0000003f000000bf000000000000803f00000000ffffffff0000803d000080bd000000bf0000003f0000c0bf000000000000803f00000000ffffffff00000000000000be0000003f0000003f0000c0bf000000000000803f00000000ffffffff0000803d000000be000000bf0000003f000000bf000080bf0000000000000000ffffffff000080bf00000080000000bf0000003f0000c0bf000080bf0000000000000000ffffffff000070bf00000080000000bf000000bf000000bf000080bf0000000000000000ffffffff000080bf000080bd000000bf000000bf0000c0bf000080bf0000000000000000ffffffff000070bf000080bd000000bf0000003f0000c0bf000000000000803f00000000ffffffff00000000000000be0000003f0000003f0000c0bf000000000000803f00000000ffffffff0000803d000000be000000bf0000003f000020c0000000000000803f00000000ffffffff00000000000040be0000003f0000003f000020c0000000000000803f00000000ffffffff0000803d000040be000000bf0000003f0000c0bf000080bf0000000000000000ffffffff000070bf00000080000000bf0000003f000020c0000080bf0000000000000000ffffffff000060bf00000080000000bf000000bf0000c0bf000080bf0000000000000000ffffffff000070bf000080bd000000bf000000bf000020c0000080bf0000000000000000ffffffff000060bf000080bd000000bf0000003f000020c0000000000000803f00000000ffffffff00000000000040be0000003f0000003f000020c0000000000000803f00000000ffffffff0000803d000040be000000bf0000003f000060c0000000000000803f00000000ffffffff00000000000080be0000003f0000003f000060c0000000000000803f00000000ffffffff0000803d000080be000000bf0000003f000020c0000080bf0000000000000000ffffffff000060bf00000080000000bf0000003f000060c0000080bf0000000000000000ffffffff000050bf00000080000000bf000000bf000020c0000080bf0000000000000000ffffffff000060bf000080bd000000bf000000bf000060c0000080bf0000000000000000ffffffff000050bf000080bd000000bf0000003f000060c0000000000000803f00000000ffffffff00000000000080be0000003f0000003f000060c0000000000000803f00000000ffffffff0000803d000080be000000bf0000003f000090c0000000000000803f00000000ffffffff000000000000a0be0000003f0000003f000090c0000000000000803f00000000ffffffff0000803d0000a0be000000bf0000003f000060c0000080bf0000000000000000ffffffff000050bf00000080000000bf0000003f000090c0000080bf0000000000000000ffffffff000040bf00000080000000bf000000bf000060c0000080bf0000000000000000ffffffff000050bf000080bd000000bf000000bf000090c0000080bf0000000000000000ffffffff000040bf000080bd000000bf0000003f000090c0000000000000803f00000000ffffffff000000000000a0be0000003f0000003f000090c0000000000000803f00000000ffffffff0000803d0000a0be000000bf0000003f0000b0c0000000000000803f00000000ffffffff000000000000c0be0000003f0000003f0000b0c0000000000000803f00000000ffffffff0000803d0000c0be000000bf0000003f000090c0000080bf0000000000000000ffffffff000040bf00000080000000bf0000003f0000b0c0000080bf0000000000000000ffffffff000030bf00000080000000bf000000bf000090c0000080bf0000000000000000ffffffff000040bf000080bd000000bf000000bf0000b0c0000080bf0000000000000000ffffffff000030bf000080bd000000bf0000003f0000b0c0000000000000803f00000000ffffffff000000000000c0be0000003f0000003f0000b0c0000000000000803f00000000ffffffff0000803d0000c0be000000bf0000003f0000d0c0000000000000803f00000000ffffffff000000000000e0be0000003f0000003f0000d0c0000000000000803f00000000ffffffff0000803d0000e0be000000bf0000003f0000b0c0000080bf0000000000000000ffffffff000030bf00000080000000bf0000003f0000d0c0000080bf0000000000000000ffffffff000020bf00000080000000bf000000bf0000b0c0000080bf0000000000000000ffffffff000030bf000080bd000000bf000000bf0000d0c0000080bf0000000000000000ffffffff000020bf000080bd000000bf0000003f0000d0c0000000000000803f00000000ffffffff000000000000e0be0000003f0000003f0000d0c0000000000000803f00000000ffffffff0000803d0000e0be000000bf0000003f0000f0c0000000000000803f00000000ffffffff00000000000000bf0000003f0000003f0000f0c0000000000000803f00000000ffffffff0000803d000000bf000000bf0000003f0000d0c0000080bf0000000000000000ffffffff000020bf00000080000000bf0000003f0000f0c0000080bf0000000000000000ffffffff000010bf00000080000000bf000000bf0000d0c0000080bf0000000000000000ffffffff000020bf000080bd000000bf000000bf0000f0c0000080bf0000000000000000ffffffff000010bf000080bd000000bf0000003f0000f0c0000000000000803f00000000ffffffff00000000000000bf0000003f0000003f0000f0c0000000000000803f00000000ffffffff0000803d000000bf000000bf0000003f000008c1000000000000803f00000000ffffffff00000000000010bf0000003f0000003f000008c1000000000000803f00000000ffffffff0000803d000010bf000000bf0000003f0000f0c0000080bf0000000000000000ffffffff000010bf00000080000000bf0000003f000008c1000080bf0000000000000000ffffffff000000bf00000080000000bf000000bf0000f0c0000080bf0000000000000000ffffffff000010bf000080bd000000bf000000bf000008c1000080bf0000000000000000ffffffff000000bf000080bd000000bf0000003f000008c1000000000000803f00000000ffffffff00000000000010bf0000003f0000003f000008c1000000000000803f00000000ffffffff0000803d000010bf000000bf0000003f000018c1000000000000803f00000000ffffffff00000000000020bf0000003f0000003f000018c1000000000000803f00000000ffffffff0000803d000020bf000000bf0000003f000008c1000080bf0000000000000000ffffffff000000bf00000080000000bf0000003f000018c1000080bf0000000000000000ffffffff0000e0be00000080000000bf000000bf000008c1000080bf0000000000000000ffffffff000000bf000080bd000000bf000000bf000018c1000080bf0000000000000000ffffffff0000e0be000080bd000000bf0000003f000018c1000000000000803f00000000ffffffff00000000000020bf0000003f0000003f000018c1000000000000803f00000000ffffffff0000803d000020bf000000bf0000003f000028c1000000000000803f00000000ffffffff00000000000030bf0000003f0000003f000028c1000000000000803f00000000ffffffff0000803d000030bf000000bf0000003f000018c1000080bf0000000000000000ffffffff0000e0be00000080000000bf0000003f000028c1000080bf0000000000000000ffffffff0000c0be00000080000000bf000000bf000018c1000080bf0000000000000000ffffffff0000e0be000080bd000000bf000000bf000028c1000080bf0000000000000000ffffffff0000c0be000080bd000000bf0000003f000028c1000000000000803f00000000ffffffff00000000000030bf0000003f0000003f000028c1000000000000803f00000000ffffffff0000803d000030bf000000bf0000003f000038c1000000000000803f00000000ffffffff00000000000040bf0000003f0000003f000038c1000000000000803f00000000ffffffff0000803d000040bf000000bf0000003f000028c1000080bf0000000000000000ffffffff0000c0be00000080000000bf0000003f000038c1000080bf0000000000000000ffffffff0000a0be00000080000000bf000000bf000028c1000080bf0000000000000000ffffffff0000c0be000080bd000000bf000000bf000038c1000080bf0000000000000000ffffffff0000a0be000080bd000000bf0000003f000038c1000000000000803f00000000ffffffff00000000000040bf0000003f0000003f000038c1000000000000803f00000000ffffffff0000803d000040bf000000bf0000003f000048c1000000000000803f00000000ffffffff00000000000050bf0000003f0000003f000048c1000000000000803f00000000ffffffff0000803d000050bf000000bf0000003f000038c1000080bf0000000000000000ffffffff0000a0be00000080000000bf0000003f000048c1000080bf0000000000000000ffffffff000080be00000080000000bf000000bf000038c1000080bf0000000000000000ffffffff0000a0be000080bd000000bf000000bf000048c1000080bf0000000000000000ffffffff000080be000080bd000000bf0000003f000048c1000000000000803f00000000ffffffff00000000000050bf0000003f0000003f000048c1000000000000803f00000000ffffffff0000803d000050bf000000bf0000003f000058c1000000000000803f00000000ffffffff00000000000060bf0000003f0000003f000058c1000000000000803f00000000ffffffff0000803d000060bf000000bf0000003f000048c1000080bf0000000000000000ffffffff000080be00000080000000bf0000003f000058c1000080bf0000000000000000ffffffff000040be00000080000000bf000000bf000048c1000080bf0000000000000000ffffffff000080be000080bd000000bf000000bf000058c1000080bf0000000000000000ffffffff000040be000080bd000000bf0000003f000058c1000000000000803f00000000ffffffff00000000000060bf0000003f0000003f000058c1000000000000803f00000000ffffffff0000803d000060bf000000bf0000003f000068c1000000000000803f00000000ffffffff00000000000070bf0000003f0000003f000068c1000000000000803f00000000ffffffff0000803d000070bf000000bf0000003f000058c1000080bf0000000000000000ffffffff000040be00000080000000bf0000003f000068c1000080bf0000000000000000ffffffff000000be00000080000000bf000000bf000058c1000080bf0000000000000000ffffffff000040be000080bd000000bf000000bf000068c1000080bf0000000000000000ffffffff000000be000080bd000000bf0000003f000068c1000000000000803f00000000ffffffff00000000000070bf0000003f0000003f000068c1000000000000803f00000000ffffffff0000803d000070bf000000bf0000003f000078c1000000000000803f00000000ffffffff00000000000080bf0000003f0000003f000078c1000000000000803f00000000ffffffff0000803d000080bf000000bf0000003f000078c10000000000000000000080bfffffffff000088bf000000800000003f0000003f000078c10000000000000000000080bfffffffff000080bf00000080000000bf000000bf000078c10000000000000000000080bfffffffff000088bf000080bd0000003f000000bf000078c10000000000000000000080bfffffffff000080bf000080bd000000bf0000003f000068c1000080bf0000000000000000ffffffff000000be00000080000000bf0000003f000078c1000080bf0000000000000000ffffffff000080bd00000080000000bf000000bf000068c1000080bf0000000000000000ffffffff000000be000080bd000000bf000000bf000078c1000080bf0000000000000000ffffffff000080bd000080bd0000003f0000003f0000003f000000000000803f00000000ffffffff0000803d000000800000c03f0000003f0000003f000000000000803f00000000ffffffff0000003e000000800000003f0000003f000000bf000000000000803f00000000ffffffff0000803d000080bd0000c03f0000003f000000bf000000000000803f00000000ffffffff0000003e000080bd0000c03f0000003f0000003f00000000000000000000803fffffffff000000be000000800000003f0000003f0000003f00000000000000000000803fffffffff000080bd000000800000c03f000000bf0000003f00000000000000000000803fffffffff000000be000080bd0000003f000000bf0000003f00000000000000000000803fffffffff000080bd000080bd0000003f0000003f000000bf000000000000803f00000000ffffffff0000803d000080bd0000c03f0000003f000000bf000000000000803f00000000ffffffff0000003e000080bd0000003f0000003f0000c0bf000000000000803f00000000ffffffff0000803d000000be0000c03f0000003f0000c0bf000000000000803f00000000ffffffff0000003e000000be0000003f0000003f0000c0bf000000000000803f00000000ffffffff0000803d000000be0000c03f0000003f0000c0bf000000000000803f00000000ffffffff0000003e000000be0000003f0000003f000020c0000000000000803f00000000ffffffff0000803d000040be0000c03f0000003f000020c0000000000000803f00000000ffffffff0000003e000040be0000003f0000003f000020c0000000000000803f00000000ffffffff0000803d000040be0000c03f0000003f000020c0000000000000803f00000000ffffffff0000003e000040be0000003f0000003f000060c0000000000000803f00000000ffffffff0000803d000080be0000c03f0000003f000060c0000000000000803f00000000ffffffff0000003e000080be0000003f0000003f000060c0000000000000803f00000000ffffffff0000803d000080be0000c03f0000003f000060c0000000000000803f00000000ffffffff0000003e000080be0000003f0000003f000090c0000000000000803f00000000ffffffff0000803d0000a0be0000c03f0000003f000090c0000000000000803f00000000ffffffff0000003e0000a0be0000003f0000003f000090c0000000000000803f00000000ffffffff0000803d0000a0be0000c03f0000003f000090c0000000000000803f00000000ffffffff0000003e0000a0be0000003f0000003f0000b0c0000000000000803f00000000ffffffff0000803d0000c0be0000c03f0000003f0000b0c0000000000000803f00000000ffffffff0000003e0000c0be0000003f0000003f0000b0c0000000000000803f00000000ffffffff0000803d0000c0be0000c03f0000003f0000b0c0000000000000803f00000000ffffffff0000003e0000c0be0000003f0000003f0000d0c0000000000000803f00000000ffffffff0000803d0000e0be0000c03f0000003f0000d0c0000000000000803f00000000ffffffff0000003e0000e0be0000003f0000003f0000d0c0000000000000803f00000000ffffffff0000803d0000e0be0000c03f0000003f0000d0c0000000000000803f00000000ffffffff0000003e0000e0be0000003f0000003f0000f0c0000000000000803f00000000ffffffff0000803d000000bf0000c03f0000003f0000f0c0000000000000803f00000000ffffffff0000003e000000bf0000003f0000003f0000f0c0000000000000803f00000000ffffffff0000803d000000bf0000c03f0000003f0000f0c0000000000000803f00000000ffffffff0000003e000000bf0000003f0000003f000008c1000000000000803f00000000ffffffff0000803d000010bf0000c03f0000003f000008c1000000000000803f00000000ffffffff0000003e000010bf0000003f0000003f000008c1000000000000803f00000000ffffffff0000803d000010bf0000c03f0000003f000008c1000000000000803f00000000ffffffff0000003e000010bf0000003f0000003f000018c1000000000000803f00000000ffffffff0000803d000020bf0000c03f0000003f000018c1000000000000803f00000000ffffffff0000003e000020bf0000003f0000003f000018c1000000000000803f00000000ffffffff0000803d000020bf0000c03f0000003f000018c1000000000000803f00000000ffffffff0000003e000020bf0000003f0000003f000028c1000000000000803f00000000ffffffff0000803d000030bf0000c03f0000003f000028c1000000000000803f00000000ffffffff0000003e000030bf0000003f0000003f000028c1000000000000803f00000000ffffffff0000803d000030bf0000c03f0000003f000028c1000000000000803f00000000ffffffff0000003e000030bf0000003f0000003f000038c1000000000000803f00000000ffffffff0000803d000040bf0000c03f0000003f000038c1000000000000803f00000000ffffffff0000003e000040bf0000003f0000003f000038c1000000000000803f00000000ffffffff0000803d000040bf0000c03f0000003f000038c1000000000000803f00000000ffffffff0000003e000040bf0000003f0000003f000048c1000000000000803f00000000ffffffff0000803d000050bf0000c03f0000003f000048c1000000000000803f00000000ffffffff0000003e000050bf0000003f0000003f000048c1000000000000803f00000000ffffffff0000803d000050bf0000c03f0000003f000048c1000000000000803f00000000ffffffff0000003e000050bf0000003f0000003f000058c1000000000000803f00000000ffffffff0000803d000060bf0000c03f0000003f000058c1000000000000803f00000000ffffffff0000003e000060bf0000003f0000003f000058c1000000000000803f00000000ffffffff0000803d000060bf0000c03f0000003f000058c1000000000000803f00000000ffffffff0000003e000060bf0000003f0000003f000068c1000000000000803f00000000ffffffff0000803d000070bf0000c03f0000003f000068c1000000000000803f00000000ffffffff0000003e000070bf0000003f0000003f000068c1000000000000803f00000000ffffffff0000803d000070bf0000c03f0000003f000068c1000000000000803f00000000ffffffff0000003e000070bf0000003f0000003f000078c1000000000000803f00000000ffffffff0000803d000080bf0000c03f0000003f000078c1000000000000803f00000000ffffffff0000003e000080bf0000003f0000003f000078c10000000000000000000080bfffffffff000080bf000000800000c03f0000003f000078c10000000000000000000080bfffffffff000070bf000000800000003f000000bf000078c10000000000000000000080bfffffffff000080bf000080bd0000c03f000000bf000078c10000000000000000000080bfffffffff000070bf000080bd0000c03f0000003f0000003f000000000000803f00000000ffffffff0000003e00000080000020400000003f0000003f000000000000803f00000000ffffffff0000403e000000800000c03f0000003f000000bf000000000000803f00000000ffffffff0000003e000080bd000020400000003f000000bf000000000000803f00000000ffffffff0000403e000080bd000020400000003f0000003f00000000000000000000803fffffffff000040be000000800000c03f0000003f0000003f00000000000000000000803fffffffff000000be0000008000002040000000bf0000003f00000000000000000000803fffffffff000040be000080bd0000c03f000000bf0000003f00000000000000000000803fffffffff000000be000080bd0000c03f0000003f000000bf000000000000803f00000000ffffffff0000003e000080bd000020400000003f000000bf000000000000803f00000000ffffffff0000403e000080bd0000c03f0000003f0000c0bf000000000000803f00000000ffffffff0000003e000000be000020400000003f0000c0bf000000000000803f00000000ffffffff0000403e000000be0000c03f0000003f0000c0bf000000000000803f00000000ffffffff0000003e000000be000020400000003f0000c0bf000000000000803f00000000ffffffff0000403e000000be0000c03f0000003f000020c0000000000000803f00000000ffffffff0000003e000040be000020400000003f000020c0000000000000803f00000000ffffffff0000403e000040be0000c03f0000003f000020c0000000000000803f00000000ffffffff0000003e000040be000020400000003f000020c0000000000000803f00000000ffffffff0000403e000040be0000c03f0000003f000060c0000000000000803f00000000ffffffff0000003e000080be000020400000003f000060c0000000000000803f00000000ffffffff0000403e000080be0000c03f0000003f000060c0000000000000803f00000000ffffffff0000003e000080be000020400000003f000060c0000000000000803f00000000ffffffff0000403e000080be0000c03f0000003f000090c0000000000000803f00000000ffffffff0000003e0000a0be000020400000003f000090c0000000000000803f00000000ffffffff0000403e0000a0be0000c03f0000003f000090c0000000000000803f00000000ffffffff0000003e0000a0be000020400000003f000090c0000000000000803f00000000ffffffff0000403e0000a0be0000c03f0000003f0000b0c0000000000000803f00000000ffffffff0000003e0000c0be000020400000003f0000b0c0000000000000803f00000000ffffffff0000403e0000c0be0000c03f0000003f0000b0c0000000000000803f00000000ffffffff0000003e0000c0be000020400000003f0000b0c0000000000000803f00000000ffffffff0000403e0000c0be0000c03f0000003f0000d0c0000000000000803f00000000ffffffff0000003e0000e0be000020400000003f0000d0c0000000000000803f00000000ffffffff0000403e0000e0be0000c03f0000003f0000d0c0000000000000803f00000000ffffffff0000003e0000e0be000020400000003f0000d0c0000000000000803f00000000ffffffff0000403e0000e0be0000c03f0000003f0000f0c0000000000000803f00000000ffffffff0000003e000000bf000020400000003f0000f0c0000000000000803f00000000ffffffff0000403e000000bf0000c03f0000003f0000f0c0000000000000803f00000000ffffffff0000003e000000bf000020400000003f0000f0c0000000000000803f00000000ffffffff0000403e000000bf0000c03f0000003f000008c1000000000000803f00000000ffffffff0000003e000010bf000020400000003f000008c1000000000000803f00000000ffffffff0000403e000010bf0000c03f0000003f000008c1000000000000803f00000000ffffffff0000003e000010bf000020400000003f000008c1000000000000803f00000000ffffffff0000403e000010bf0000c03f0000003f000018c1000000000000803f00000000ffffffff0000003e000020bf000020400000003f000018c1000000000000803f00000000ffffffff0000403e000020bf0000c03f0000003f000018c1000000000000803f00000000ffffffff0000003e000020bf000020400000003f000018c1000000000000803f00000000ffffffff0000403e000020bf0000c03f0000003f000028c1000000000000803f00000000ffffffff0000003e000030bf000020400000003f000028c1000000000000803f00000000ffffffff0000403e000030bf0000c03f0000003f000028c1000000000000803f00000000ffffffff0000003e000030bf000020400000003f000028c1000000000000803f00000000ffffffff0000403e000030bf0000c03f0000003f000038c1000000000000803f00000000ffffffff0000003e000040bf000020400000003f000038c1000000000000803f00000000ffffffff0000403e000040bf0000c03f0000003f000038c1000000000000803f00000000ffffffff0000003e000040bf000020400000003f000038c1000000000000803f00000000ffffffff0000403e000040bf0000c03f0000003f000048c1000000000000803f00000000ffffffff0000003e000050bf000020400000003f000048c1000000000000803f00000000ffffffff0000403e000050bf0000c03f0000003f000048c1000000000000803f00000000ffffffff0000003e000050bf000020400000003f000048c1000000000000803f00000000ffffffff0000403e000050bf0000c03f0000003f000058c1000000000000803f00000000ffffffff0000003e000060bf000020400000003f000058c1000000000000803f00000000ffffffff0000403e000060bf0000c03f0000003f000058c1000000000000803f00000000ffffffff0000003e000060bf000020400000003f000058c1000000000000803f00000000ffffffff0000403e000060bf0000c03f0000003f000068c1000000000000803f00000000ffffffff0000003e000070bf000020400000003f000068c1000000000000803f00000000ffffffff0000403e000070bf0000c03f0000003f000068c1000000000000803f00000000ffffffff0000003e000070bf000020400000003f000068c1000000000000803f00000000ffffffff0000403e000070bf0000c03f0000003f000078c1000000000000803f00000000ffffffff0000003e000080bf000020400000003f000078c1000000000000803f00000000ffffffff0000403e000080bf0000c03f0000003f000078c10000000000000000000080bfffffffff000070bf00000080000020400000003f000078c10000000000000000000080bfffffffff000060bf000000800000c03f000000bf000078c10000000000000000000080bfffffffff000070bf000080bd00002040000000bf000078c10000000000000000000080bfffffffff000060bf000080bd000020400000003f0000003f000000000000803f00000000ffffffff0000403e00000080000060400000003f0000003f000000000000803f00000000ffffffff0000803e00000080000020400000003f000000bf000000000000803f00000000ffffffff0000403e000080bd000060400000003f000000bf000000000000803f00000000ffffffff0000803e000080bd000060400000003f0000003f00000000000000000000803fffffffff000080be00000080000020400000003f0000003f00000000000000000000803fffffffff000040be0000008000006040000000bf0000003f00000000000000000000803fffffffff000080be000080bd00002040000000bf0000003f00000000000000000000803fffffffff000040be000080bd000020400000003f000000bf000000000000803f00000000ffffffff0000403e000080bd000060400000003f000000bf000000000000803f00000000ffffffff0000803e000080bd000020400000003f0000c0bf000000000000803f00000000ffffffff0000403e000000be000060400000003f0000c0bf000000000000803f00000000ffffffff0000803e000000be000020400000003f0000c0bf000000000000803f00000000ffffffff0000403e000000be000060400000003f0000c0bf000000000000803f00000000ffffffff0000803e000000be000020400000003f000020c0000000000000803f00000000ffffffff0000403e000040be000060400000003f000020c0000000000000803f00000000ffffffff0000803e000040be000020400000003f000020c0000000000000803f00000000ffffffff0000403e000040be000060400000003f000020c0000000000000803f00000000ffffffff0000803e000040be000020400000003f000060c0000000000000803f00000000ffffffff0000403e000080be000060400000003f000060c0000000000000803f00000000ffffffff0000803e000080be000060400000003f000060c00000803f0000000000000000ffffffff000080be00000080000060400000003f000020c00000803f0000000000000000ffffffff000040be0000008000006040cdccccbe000060c00000803f0000000000000000ffffffff000080be000080bd00006040cdccccbe000020c00000803f0000000000000000ffffffff000040be000080bd000020400000003f000060c0000000000000803f00000000ffffffff0000403e000080be000060400000003f000060c0000000000000803f00000000ffffffff0000803e000080be000020400000003f000090c0000000000000803f00000000ffffffff0000403e0000a0be000060400000003f000090c0000000000000803f00000000ffffffff0000803e0000a0be000060400000003f000090c00000803f0000000000000000ffffffff0000a0be00000080000060400000003f000060c00000803f0000000000000000ffffffff000080be0000008000006040cdccccbe000090c00000803f0000000000000000ffffffff0000a0be000080bd00006040cdccccbe000060c00000803f0000000000000000ffffffff000080be000080bd000020400000003f000090c0000000000000803f00000000ffffffff0000403e0000a0be000060400000003f000090c0000000000000803f00000000ffffffff0000803e0000a0be000020400000003f0000b0c0000000000000803f00000000ffffffff0000403e0000c0be000060400000003f0000b0c0000000000000803f00000000ffffffff0000803e0000c0be000060400000003f0000b0c00000803f0000000000000000ffffffff0000c0be00000080000060400000003f000090c00000803f0000000000000000ffffffff0000a0be0000008000006040cdccccbe0000b0c00000803f0000000000000000ffffffff0000c0be000080bd00006040cdccccbe000090c00000803f0000000000000000ffffffff0000a0be000080bd000020400000003f0000b0c0000000000000803f00000000ffffffff0000403e0000c0be000060400000003f0000b0c0000000000000803f00000000ffffffff0000803e0000c0be000020400000003f0000d0c0000000000000803f00000000ffffffff0000403e0000e0be000060400000003f0000d0c0000000000000803f00000000ffffffff0000803e0000e0be000020400000003f0000d0c0000000000000803f00000000ffffffff0000403e0000e0be000060400000003f0000d0c0000000000000803f00000000ffffffff0000803e0000e0be000020400000003f0000f0c0000000000000803f00000000ffffffff0000403e000000bf000060400000003f0000f0c0000000000000803f00000000ffffffff0000803e000000bf000020400000003f0000f0c0000000000000803f00000000ffffffff0000403e000000bf000060400000003f0000f0c0000000000000803f00000000ffffffff0000803e000000bf000020400000003f000008c1000000000000803f00000000ffffffff0000403e000010bf000060400000003f000008c1000000000000803f00000000ffffffff0000803e000010bf000020400000003f000008c1000000000000803f00000000ffffffff0000403e000010bf000060400000003f000008c1000000000000803f00000000ffffffff0000803e000010bf000020400000003f000018c1000000000000803f00000000ffffffff0000403e000020bf000060400000003f000018c1000000000000803f00000000ffffffff0000803e000020bf000020400000003f000018c1000000000000803f00000000ffffffff0000403e000020bf000060400000003f000018c1000000000000803f00000000ffffffff0000803e000020bf000020400000003f000028c1000000000000803f00000000ffffffff0000403e000030bf000060400000003f000028c1000000000000803f00000000ffffffff0000803e000030bf000020400000003f000028c1000000000000803f00000000ffffffff0000403e000030bf000060400000003f000028c1000000000000803f00000000ffffffff0000803e000030bf000020400000003f000038c1000000000000803f00000000ffffffff0000403e000040bf000060400000003f000038c1000000000000803f00000000ffffffff0000803e000040bf000060400000003f000038c10000803f0000000000000000ffffffff000040bf00000080000060400000003f000028c10000803f0000000000000000ffffffff000030bf0000008000006040cdccccbe000038c10000803f0000000000000000ffffffff000040bf000080bd00006040cdccccbe000028c10000803f0000000000000000ffffffff000030bf000080bd000020400000003f000038c1000000000000803f00000000ffffffff0000403e000040bf000060400000003f000038c1000000000000803f00000000ffffffff0000803e000040bf000020400000003f000048c1000000000000803f00000000ffffffff0000403e000050bf000060400000003f000048c1000000000000803f00000000ffffffff0000803e000050bf000060400000003f000048c10000803f0000000000000000ffffffff000050bf00000080000060400000003f000038c10000803f0000000000000000ffffffff000040bf0000008000006040cdccccbe000048c10000803f0000000000000000ffffffff000050bf000080bd00006040cdccccbe000038c10000803f0000000000000000ffffffff000040bf000080bd000020400000003f000048c1000000000000803f00000000ffffffff0000403e000050bf000060400000003f000048c1000000000000803f00000000ffffffff0000803e000050bf000020400000003f000058c1000000000000803f00000000ffffffff0000403e000060bf000060400000003f000058c1000000000000803f00000000ffffffff0000803e000060bf000020400000003f000058c1000000000000803f00000000ffffffff0000403e000060bf000060400000003f000058c1000000000000803f00000000ffffffff0000803e000060bf000020400000003f000068c1000000000000803f00000000ffffffff0000403e000070bf000060400000003f000068c1000000000000803f00000000ffffffff0000803e000070bf000020400000003f000068c1000000000000803f00000000ffffffff0000403e000070bf000060400000003f000068c1000000000000803f00000000ffffffff0000803e000070bf000020400000003f000078c1000000000000803f00000000ffffffff0000403e000080bf000060400000003f000078c1000000000000803f00000000ffffffff0000803e000080bf000020400000003f000078c10000000000000000000080bfffffffff000060bf00000080000060400000003f000078c10000000000000000000080bfffffffff000050bf0000008000002040000000bf000078c10000000000000000000080bfffffffff000060bf000080bd00006040000000bf000078c10000000000000000000080bfffffffff000050bf000080bd000060400000003f0000003f000000000000803f00000000ffffffff0000803e00000080000090400000003f0000003f000000000000803f00000000ffffffff0000a03e00000080000060400000003f000000bf000000000000803f00000000ffffffff0000803e000080bd000090400000003f000000bf000000000000803f00000000ffffffff0000a03e000080bd000090400000003f0000003f00000000000000000000803fffffffff0000a0be00000080000060400000003f0000003f00000000000000000000803fffffffff000080be0000008000009040000000bf0000003f00000000000000000000803fffffffff0000a0be000080bd00006040000000bf0000003f00000000000000000000803fffffffff000080be000080bd000060400000003f000000bf000000000000803f00000000ffffffff0000803e000080bd000090400000003f000000bf000000000000803f00000000ffffffff0000a03e000080bd000060400000003f0000c0bf000000000000803f00000000ffffffff0000803e000000be000090400000003f0000c0bf000000000000803f00000000ffffffff0000a03e000000be000060400000003f0000c0bf000000000000803f00000000ffffffff0000803e000000be000090400000003f0000c0bf000000000000803f00000000ffffffff0000a03e000000be000060400000003f000020c0000000000000803f00000000ffffffff0000803e000040be000090400000003f000020c0000000000000803f00000000ffffffff0000a03e000040be000060400000003f000020c00000000000000000000080bfffffffff000050bf00000080000090400000003f000020c00000000000000000000080bfffffffff000040bf0000008000006040cdccccbe000020c00000000000000000000080bfffffffff000050bf000080bd00009040cdccccbe000020c00000000000000000000080bfffffffff000040bf000080bd00006040cdccccbe000020c0000000000000803f000000002814f5ff0000803e000040be00009040cdccccbe000020c0000000000000803f000000002814f5ff0000a03e000040be00006040cdccccbe000060c0000000000000803f000000002814f5ff0000803e000080be00009040cdccccbe000060c0000000000000803f000000002814f5ff0000a03e000080be00006040cdccccbe000060c0000000000000803f000000002814f5ff0000803e000080be00009040cdccccbe000060c0000000000000803f000000002814f5ff0000a03e000080be00006040cdccccbe000090c0000000000000803f000000002814f5ff0000803e0000a0be00009040cdccccbe000090c0000000000000803f000000002814f5ff0000a03e0000a0be00006040cdccccbe000090c0000000000000803f00000000fff114ff0000803e0000a0be00009040cdccccbe000090c0000000000000803f00000000fff114ff0000a03e0000a0be00006040cdccccbe0000b0c0000000000000803f00000000fff114ff0000803e0000c0be00009040cdccccbe0000b0c0000000000000803f00000000fff114ff0000a03e0000c0be000060400000003f0000b0c0000000000000803f00000000ffffffff0000803e0000c0be000090400000003f0000b0c0000000000000803f00000000ffffffff0000a03e0000c0be000060400000003f0000d0c0000000000000803f00000000ffffffff0000803e0000e0be000090400000003f0000d0c0000000000000803f00000000ffffffff0000a03e0000e0be000090400000003f0000b0c000000000000000000000803fffffffff0000a0be00000080000060400000003f0000b0c000000000000000000000803fffffffff000080be0000008000009040cdccccbe0000b0c000000000000000000000803fffffffff0000a0be000080bd00006040cdccccbe0000b0c000000000000000000000803fffffffff000080be000080bd000090400000003f0000d0c00000803f0000000000000000ffffffff0000e0be00000080000090400000003f0000b0c00000803f0000000000000000ffffffff0000c0be0000008000009040cdccccbe0000d0c00000803f0000000000000000ffffffff0000e0be000080bd00009040cdccccbe0000b0c00000803f0000000000000000ffffffff0000c0be000080bd000060400000003f0000d0c0000000000000803f00000000ffffffff0000803e0000e0be000090400000003f0000d0c0000000000000803f00000000ffffffff0000a03e0000e0be000060400000003f0000f0c0000000000000803f00000000ffffffff0000803e000000bf000090400000003f0000f0c0000000000000803f00000000ffffffff0000a03e000000bf000090400000003f0000f0c00000803f0000000000000000ffffffff000000bf00000080000090400000003f0000d0c00000803f0000000000000000ffffffff0000e0be0000008000009040cdccccbe0000f0c00000803f0000000000000000ffffffff000000bf000080bd00009040cdccccbe0000d0c00000803f0000000000000000ffffffff0000e0be000080bd000060400000003f0000f0c0000000000000803f0000000037904cff0000803e000000bf000090400000003f0000f0c0000000000000803f0000000037904cff0000a03e000000bf000060400000003f000008c1000000000000803f0000000037904cff0000803e000010bf000090400000003f000008c1000000000000803f0000000037904cff0000a03e000010bf000090400000003f000008c10000803f000000000000000037904cff000010bf00000080000090400000003f0000f0c00000803f000000000000000037904cff000000bf0000008000009040000000bf000008c10000803f000000000000000037904cff000010bf000080bd00009040000000bf0000f0c00000803f000000000000000037904cff000000bf000080bd000060400000003f000008c1000000000000803f0000000037904cff0000803e000010bf000090400000003f000008c1000000000000803f0000000037904cff0000a03e000010bf000060400000003f000018c1000000000000803f0000000037904cff0000803e000020bf000090400000003f000018c1000000000000803f0000000037904cff0000a03e000020bf000090400000003f000018c10000803f000000000000000037904cff000020bf00000080000090400000003f000008c10000803f000000000000000037904cff000010bf0000008000009040cdccccbe000018c10000803f000000000000000037904cff000020bf000080bd00009040cdccccbe000008c10000803f000000000000000037904cff000010bf000080bd000060400000003f000018c1000000000000803f0000000037904cff0000803e000020bf000090400000003f000018c1000000000000803f0000000037904cff0000a03e000020bf000060400000003f000028c1000000000000803f0000000037904cff0000803e000030bf000090400000003f000028c1000000000000803f0000000037904cff0000a03e000030bf000060400000003f000028c10000000000000000000080bf37904cff000050bf00000080000090400000003f000028c10000000000000000000080bf37904cff000040bf0000008000006040cdccccbe000028c10000000000000000000080bf37904cff000050bf000080bd00009040cdccccbe000028c10000000000000000000080bf37904cff000040bf000080bd00006040cdccccbe000028c1000000000000803f0000000097ab2cff0000803e000030bf00009040cdccccbe000028c1000000000000803f0000000097ab2cff0000a03e000030bf00006040cdccccbe000038c1000000000000803f0000000097ab2cff0000803e000040bf00009040cdccccbe000038c1000000000000803f0000000097ab2cff0000a03e000040bf00006040cdccccbe000038c1000000000000803f0000000097ab2cff0000803e000040bf00009040cdccccbe000038c1000000000000803f0000000097ab2cff0000a03e000040bf00006040cdccccbe000048c1000000000000803f0000000097ab2cff0000803e000050bf00009040cdccccbe000048c1000000000000803f0000000097ab2cff0000a03e000050bf000060400000003f000048c1000000000000803f00000000ffffffff0000803e000050bf000090400000003f000048c1000000000000803f00000000ffffffff0000a03e000050bf000060400000003f000058c1000000000000803f00000000ffffffff0000803e000060bf000090400000003f000058c1000000000000803f00000000ffffffff0000a03e000060bf000090400000003f000048c100000000000000000000803fffffffff0000a0be00000080000060400000003f000048c100000000000000000000803fffffffff000080be0000008000009040cdccccbe000048c100000000000000000000803fffffffff0000a0be000080bd00006040cdccccbe000048c100000000000000000000803fffffffff000080be000080bd000060400000003f000058c1000000000000803f00000000ffffffff0000803e000060bf000090400000003f000058c1000000000000803f00000000ffffffff0000a03e000060bf000060400000003f000068c1000000000000803f00000000ffffffff0000803e000070bf000090400000003f000068c1000000000000803f00000000ffffffff0000a03e000070bf000060400000003f000068c1000000000000803f00000000ffffffff0000803e000070bf000090400000003f000068c1000000000000803f00000000ffffffff0000a03e000070bf000060400000003f000078c1000000000000803f00000000ffffffff0000803e000080bf000090400000003f000078c1000000000000803f00000000ffffffff0000a03e000080bf000060400000003f000078c10000000000000000000080bfffffffff000050bf00000080000090400000003f000078c10000000000000000000080bfffffffff000040bf0000008000006040000000bf000078c10000000000000000000080bfffffffff000050bf000080bd00009040000000bf000078c10000000000000000000080bfffffffff000040bf000080bd000090400000003f0000003f000000000000803f00000000ffffffff0000a03e000000800000b0400000003f0000003f000000000000803f00000000ffffffff0000c03e00000080000090400000003f000000bf000000000000803f00000000ffffffff0000a03e000080bd0000b0400000003f000000bf000000000000803f00000000ffffffff0000c03e000080bd0000b0400000003f0000003f00000000000000000000803fffffffff0000c0be00000080000090400000003f0000003f00000000000000000000803fffffffff0000a0be000000800000b040000000bf0000003f00000000000000000000803fffffffff0000c0be000080bd00009040000000bf0000003f00000000000000000000803fffffffff0000a0be000080bd000090400000003f000000bf000000000000803f00000000ffffffff0000a03e000080bd0000b0400000003f000000bf000000000000803f00000000ffffffff0000c03e000080bd000090400000003f0000c0bf000000000000803f00000000ffffffff0000a03e000000be0000b0400000003f0000c0bf000000000000803f00000000ffffffff0000c03e000000be000090400000003f0000c0bf000000000000803f00000000ffffffff0000a03e000000be0000b0400000003f0000c0bf000000000000803f00000000ffffffff0000c03e000000be000090400000003f000020c0000000000000803f00000000ffffffff0000a03e000040be0000b0400000003f000020c0000000000000803f00000000ffffffff0000c03e000040be000090400000003f000020c00000000000000000000080bfffffffff000040bf000000800000b0400000003f000020c00000000000000000000080bfffffffff000030bf0000008000009040cdccccbe000020c00000000000000000000080bfffffffff000040bf000080bd0000b040cdccccbe000020c00000000000000000000080bfffffffff000030bf000080bd00009040cdccccbe000020c0000000000000803f000000002814f5ff0000a03e000040be0000b040cdccccbe000020c0000000000000803f000000002814f5ff0000c03e000040be00009040cdccccbe000060c0000000000000803f000000002814f5ff0000a03e000080be0000b040cdccccbe000060c0000000000000803f000000002814f5ff0000c03e000080be00009040cdccccbe000060c0000000000000803f000000002814f5ff0000a03e000080be0000b040cdccccbe000060c0000000000000803f000000002814f5ff0000c03e000080be00009040cdccccbe000090c0000000000000803f000000002814f5ff0000a03e0000a0be0000b040cdccccbe000090c0000000000000803f000000002814f5ff0000c03e0000a0be00009040cdccccbe000090c0000000000000803f00000000fff114ff0000a03e0000a0be0000b040cdccccbe000090c0000000000000803f00000000fff114ff0000c03e0000a0be00009040cdccccbe0000b0c0000000000000803f00000000fff114ff0000a03e0000c0be0000b040cdccccbe0000b0c0000000000000803f00000000fff114ff0000c03e0000c0be00009040cdccccbe0000b0c0000000000000803f00000000fff114ff0000a03e0000c0be0000b040cdccccbe0000b0c0000000000000803f00000000fff114ff0000c03e0000c0be00009040cdccccbe0000d0c0000000000000803f00000000fff114ff0000a03e0000e0be0000b040cdccccbe0000d0c0000000000000803f00000000fff114ff0000c03e0000e0be0000b040cdccccbe0000d0c00000803f0000000000000000fff114ff0000e0be000000800000b040cdccccbe0000b0c00000803f0000000000000000fff114ff0000c0be000000800000b040000000bf0000d0c00000803f0000000000000000fff114ff0000e0be000080bd0000b040000000bf0000b0c00000803f0000000000000000fff114ff0000c0be000080bd00009040cdccccbe0000d0c0000000000000803f00000000fff114ff0000a03e0000e0be0000b040cdccccbe0000d0c0000000000000803f00000000fff114ff0000c03e0000e0be00009040cdccccbe0000f0c0000000000000803f00000000fff114ff0000a03e000000bf0000b040cdccccbe0000f0c0000000000000803f00000000fff114ff0000c03e000000bf00009040cdccccbe0000f0c00000000000000000000080bffff114ff000040bf000000800000b040cdccccbe0000f0c00000000000000000000080bffff114ff000030bf0000008000009040000000bf0000f0c00000000000000000000080bffff114ff000040bf000080bd0000b040000000bf0000f0c00000000000000000000080bffff114ff000030bf000080bd0000b040cdccccbe0000f0c00000803f0000000000000000fff114ff000000bf000000800000b040cdccccbe0000d0c00000803f0000000000000000fff114ff0000e0be000000800000b040000000bf0000f0c00000803f0000000000000000fff114ff000000bf000080bd0000b040000000bf0000d0c00000803f0000000000000000fff114ff0000e0be000080bd00009040cdccccbe000008c1000000000000803f00000000f51435ff0000a03e000010bf0000b040cdccccbe000008c1000000000000803f00000000f51435ff0000c03e000010bf00009040cdccccbe000018c1000000000000803f00000000f51435ff0000a03e000020bf0000b040cdccccbe000018c1000000000000803f00000000f51435ff0000c03e000020bf0000b040cdccccbe000008c100000000000000000000803ff51435ff0000c0be0000008000009040cdccccbe000008c100000000000000000000803ff51435ff0000a0be000000800000b040000000bf000008c100000000000000000000803ff51435ff0000c0be000080bd00009040000000bf000008c100000000000000000000803ff51435ff0000a0be000080bd000090400000003f000018c1000000000000803f0000000037904cff0000a03e000020bf0000b0400000003f000018c1000000000000803f0000000037904cff0000c03e000020bf000090400000003f000028c1000000000000803f0000000037904cff0000a03e000030bf0000b0400000003f000028c1000000000000803f0000000037904cff0000c03e000030bf0000b0400000003f000018c100000000000000000000803f37904cff0000c0be00000080000090400000003f000018c100000000000000000000803f37904cff0000a0be000000800000b040cdccccbe000018c100000000000000000000803f37904cff0000c0be000080bd00009040cdccccbe000018c100000000000000000000803f37904cff0000a0be000080bd000090400000003f000028c10000000000000000000080bf37904cff000040bf000000800000b0400000003f000028c10000000000000000000080bf37904cff000030bf0000008000009040cdccccbe000028c10000000000000000000080bf37904cff000040bf000080bd0000b040cdccccbe000028c10000000000000000000080bf37904cff000030bf000080bd00009040cdccccbe000028c1000000000000803f0000000097ab2cff0000a03e000030bf0000b040cdccccbe000028c1000000000000803f0000000097ab2cff0000c03e000030bf00009040cdccccbe000038c1000000000000803f0000000097ab2cff0000a03e000040bf0000b040cdccccbe000038c1000000000000803f0000000097ab2cff0000c03e000040bf00009040cdccccbe000038c1000000000000803f0000000097ab2cff0000a03e000040bf0000b040cdccccbe000038c1000000000000803f0000000097ab2cff0000c03e000040bf00009040cdccccbe000048c1000000000000803f0000000097ab2cff0000a03e000050bf0000b040cdccccbe000048c1000000000000803f0000000097ab2cff0000c03e000050bf000090400000003f000048c1000000000000803f00000000ffffffff0000a03e000050bf0000b0400000003f000048c1000000000000803f00000000ffffffff0000c03e000050bf000090400000003f000058c1000000000000803f00000000ffffffff0000a03e000060bf0000b0400000003f000058c1000000000000803f00000000ffffffff0000c03e000060bf0000b0400000003f000048c100000000000000000000803fffffffff0000c0be00000080000090400000003f000048c100000000000000000000803fffffffff0000a0be000000800000b040cdccccbe000048c100000000000000000000803fffffffff0000c0be000080bd00009040cdccccbe000048c100000000000000000000803fffffffff0000a0be000080bd000090400000003f000058c1000000000000803f00000000ffffffff0000a03e000060bf0000b0400000003f000058c1000000000000803f00000000ffffffff0000c03e000060bf000090400000003f000068c1000000000000803f00000000ffffffff0000a03e000070bf0000b0400000003f000068c1000000000000803f00000000ffffffff0000c03e000070bf000090400000003f000068c1000000000000803f00000000ffffffff0000a03e000070bf0000b0400000003f000068c1000000000000803f00000000ffffffff0000c03e000070bf000090400000003f000078c1000000000000803f00000000ffffffff0000a03e000080bf0000b0400000003f000078c1000000000000803f00000000ffffffff0000c03e000080bf000090400000003f000078c10000000000000000000080bfffffffff000040bf000000800000b0400000003f000078c10000000000000000000080bfffffffff000030bf0000008000009040000000bf000078c10000000000000000000080bfffffffff000040bf000080bd0000b040000000bf000078c10000000000000000000080bfffffffff000030bf000080bd0000b0400000003f0000003f000000000000803f00000000ffffffff0000c03e000000800000d0400000003f0000003f000000000000803f00000000ffffffff0000e03e000000800000b0400000003f000000bf000000000000803f00000000ffffffff0000c03e000080bd0000d0400000003f000000bf000000000000803f00000000ffffffff0000e03e000080bd0000d0400000003f0000003f00000000000000000000803fffffffff0000e0be000000800000b0400000003f0000003f00000000000000000000803fffffffff0000c0be000000800000d040000000bf0000003f00000000000000000000803fffffffff0000e0be000080bd0000b040000000bf0000003f00000000000000000000803fffffffff0000c0be000080bd0000b0400000003f000000bf000000000000803f00000000ffffffff0000c03e000080bd0000d0400000003f000000bf000000000000803f00000000ffffffff0000e03e000080bd0000b0400000003f0000c0bf000000000000803f00000000ffffffff0000c03e000000be0000d0400000003f0000c0bf000000000000803f00000000ffffffff0000e03e000000be0000b0400000003f0000c0bf000000000000803f00000000ffffffff0000c03e000000be0000d0400000003f0000c0bf000000000000803f00000000ffffffff0000e03e000000be0000b0400000003f000020c0000000000000803f00000000ffffffff0000c03e000040be0000d0400000003f000020c0000000000000803f00000000ffffffff0000e03e000040be0000b0400000003f000020c0000000000000803f0000000037904cff0000c03e000040be0000d0400000003f000020c0000000000000803f0000000037904cff0000e03e000040be0000b0400000003f000060c0000000000000803f0000000037904cff0000c03e000080be0000d0400000003f000060c0000000000000803f0000000037904cff0000e03e000080be0000b0400000003f000020c0000080bf000000000000000037904cff000060bf000000800000b0400000003f000060c0000080bf000000000000000037904cff000050bf000000800000b040cdccccbe000020c0000080bf000000000000000037904cff000060bf000080bd0000b040cdccccbe000060c0000080bf000000000000000037904cff000050bf000080bd0000b0400000003f000060c0000000000000803f0000000037904cff0000c03e000080be0000d0400000003f000060c0000000000000803f0000000037904cff0000e03e000080be0000b0400000003f000090c0000000000000803f0000000037904cff0000c03e0000a0be0000d0400000003f000090c0000000000000803f0000000037904cff0000e03e0000a0be0000b0400000003f000090c00000000000000000000080bf37904cff000030bf000000800000d0400000003f000090c00000000000000000000080bf37904cff000020bf000000800000b040cdccccbe000090c00000000000000000000080bf37904cff000030bf000080bd0000d040cdccccbe000090c00000000000000000000080bf37904cff000020bf000080bd0000b0400000003f000060c0000080bf000000000000000037904cff000050bf000000800000b0400000003f000090c0000080bf000000000000000037904cff000040bf000000800000b040cdccccbe000060c0000080bf000000000000000037904cff000050bf000080bd0000b040cdccccbe000090c0000080bf000000000000000037904cff000040bf000080bd0000b040cdccccbe000090c0000000000000803f00000000fff114ff0000c03e0000a0be0000d040cdccccbe000090c0000000000000803f00000000fff114ff0000e03e0000a0be0000b040cdccccbe0000b0c0000000000000803f00000000fff114ff0000c03e0000c0be0000d040cdccccbe0000b0c0000000000000803f00000000fff114ff0000e03e0000c0be0000b040cdccccbe0000b0c00000000000000000000080bffff114ff000030bf000000800000d040cdccccbe0000b0c00000000000000000000080bffff114ff000020bf000000800000b040000000bf0000b0c00000000000000000000080bffff114ff000030bf000080bd0000d040000000bf0000b0c00000000000000000000080bffff114ff000020bf000080bd0000b040cdccccbe000008c1000000000000803f00000000f51435ff0000c03e000010bf0000d040cdccccbe000008c1000000000000803f00000000f51435ff0000e03e000010bf0000b040cdccccbe000018c1000000000000803f00000000f51435ff0000c03e000020bf0000d040cdccccbe000018c1000000000000803f00000000f51435ff0000e03e000020bf0000d040cdccccbe000008c100000000000000000000803ff51435ff0000e0be000000800000b040cdccccbe000008c100000000000000000000803ff51435ff0000c0be000000800000d040000000bf000008c100000000000000000000803ff51435ff0000e0be000080bd0000b040000000bf000008c100000000000000000000803ff51435ff0000c0be000080bd0000b0400000003f000018c1000000000000803f0000000037904cff0000c03e000020bf0000d0400000003f000018c1000000000000803f0000000037904cff0000e03e000020bf0000b0400000003f000028c1000000000000803f0000000037904cff0000c03e000030bf0000d0400000003f000028c1000000000000803f0000000037904cff0000e03e000030bf0000d0400000003f000018c100000000000000000000803f37904cff0000e0be000000800000b0400000003f000018c100000000000000000000803f37904cff0000c0be000000800000d040cdccccbe000018c100000000000000000000803f37904cff0000e0be000080bd0000b040cdccccbe000018c100000000000000000000803f37904cff0000c0be000080bd0000b0400000003f000028c10000000000000000000080bf37904cff000030bf000000800000d0400000003f000028c10000000000000000000080bf37904cff000020bf000000800000b040cdccccbe000028c10000000000000000000080bf37904cff000030bf000080bd0000d040cdccccbe000028c10000000000000000000080bf37904cff000020bf000080bd0000b040cdccccbe000028c1000000000000803f0000000097ab2cff0000c03e000030bf0000d040cdccccbe000028c1000000000000803f0000000097ab2cff0000e03e000030bf0000b040cdccccbe000038c1000000000000803f0000000097ab2cff0000c03e000040bf0000d040cdccccbe000038c1000000000000803f0000000097ab2cff0000e03e000040bf0000b040cdccccbe000038c1000000000000803f0000000097ab2cff0000c03e000040bf0000d040cdccccbe000038c1000000000000803f0000000097ab2cff0000e03e000040bf0000b040cdccccbe000048c1000000000000803f0000000097ab2cff0000c03e000050bf0000d040cdccccbe000048c1000000000000803f0000000097ab2cff0000e03e000050bf0000b0400000003f000048c1000000000000803f00000000ffffffff0000c03e000050bf0000d0400000003f000048c1000000000000803f00000000ffffffff0000e03e000050bf0000b0400000003f000058c1000000000000803f00000000ffffffff0000c03e000060bf0000d0400000003f000058c1000000000000803f00000000ffffffff0000e03e000060bf0000d0400000003f000048c100000000000000000000803fffffffff0000e0be000000800000b0400000003f000048c100000000000000000000803fffffffff0000c0be000000800000d040cdccccbe000048c100000000000000000000803fffffffff0000e0be000080bd0000b040cdccccbe000048c100000000000000000000803fffffffff0000c0be000080bd0000b0400000003f000058c1000000000000803f00000000ffffffff0000c03e000060bf0000d0400000003f000058c1000000000000803f00000000ffffffff0000e03e000060bf0000b0400000003f000068c1000000000000803f00000000ffffffff0000c03e000070bf0000d0400000003f000068c1000000000000803f00000000ffffffff0000e03e000070bf0000b0400000003f000068c1000000000000803f00000000ffffffff0000c03e000070bf0000d0400000003f000068c1000000000000803f00000000ffffffff0000e03e000070bf0000b0400000003f000078c1000000000000803f00000000ffffffff0000c03e000080bf0000d0400000003f000078c1000000000000803f00000000ffffffff0000e03e000080bf0000b0400000003f000078c10000000000000000000080bfffffffff000030bf000000800000d0400000003f000078c10000000000000000000080bfffffffff000020bf000000800000b040000000bf000078c10000000000000000000080bfffffffff000030bf000080bd0000d040000000bf000078c10000000000000000000080bfffffffff000020bf000080bd0000d0400000003f0000003f000000000000803f00000000ffffffff0000e03e000000800000f0400000003f0000003f000000000000803f00000000ffffffff0000003f000000800000d0400000003f000000bf000000000000803f00000000ffffffff0000e03e000080bd0000f0400000003f000000bf000000000000803f00000000ffffffff0000003f000080bd0000f0400000003f0000003f00000000000000000000803fffffffff000000bf000000800000d0400000003f0000003f00000000000000000000803fffffffff0000e0be000000800000f040000000bf0000003f00000000000000000000803fffffffff000000bf000080bd0000d040000000bf0000003f00000000000000000000803fffffffff0000e0be000080bd0000f0400000003f000000bf0000803f0000000000000000ffffffff000080bd000000800000f0400000003f0000003f0000803f0000000000000000ffffffff00000080000000800000f040cdccccbe000000bf0000803f0000000000000000ffffffff000080bd000080bd0000f040cdccccbe0000003f0000803f0000000000000000ffffffff00000080000080bd0000d0400000003f000000bf000000000000803f00000000ffffffff0000e03e000080bd0000f0400000003f000000bf000000000000803f00000000ffffffff0000003f000080bd0000d0400000003f0000c0bf000000000000803f00000000ffffffff0000e03e000000be0000f0400000003f0000c0bf000000000000803f00000000ffffffff0000003f000000be0000f0400000003f0000c0bf0000803f0000000000000000ffffffff000000be000000800000f0400000003f000000bf0000803f0000000000000000ffffffff000080bd000000800000f040cdccccbe0000c0bf0000803f0000000000000000ffffffff000000be000080bd0000f040cdccccbe000000bf0000803f0000000000000000ffffffff000080bd000080bd0000d0400000003f0000c0bf000000000000803f00000000ffffffff0000e03e000000be0000f0400000003f0000c0bf000000000000803f00000000ffffffff0000003f000000be0000d0400000003f000020c0000000000000803f00000000ffffffff0000e03e000040be0000f0400000003f000020c0000000000000803f00000000ffffffff0000003f000040be0000f0400000003f000020c00000803f0000000000000000ffffffff000040be000000800000f0400000003f0000c0bf0000803f0000000000000000ffffffff000000be000000800000f040cdccccbe000020c00000803f0000000000000000ffffffff000040be000080bd0000f040cdccccbe0000c0bf0000803f0000000000000000ffffffff000000be000080bd0000d0400000003f000020c0000000000000803f0000000037904cff0000e03e000040be0000f0400000003f000020c0000000000000803f0000000037904cff0000003f000040be0000d0400000003f000060c0000000000000803f0000000037904cff0000e03e000080be0000f0400000003f000060c0000000000000803f0000000037904cff0000003f000080be0000f0400000003f000060c00000803f000000000000000037904cff000080be000000800000f0400000003f000020c00000803f000000000000000037904cff000040be000000800000f040cdccccbe000060c00000803f000000000000000037904cff000080be000080bd0000f040cdccccbe000020c00000803f000000000000000037904cff000040be000080bd0000d0400000003f000060c0000000000000803f0000000037904cff0000e03e000080be0000f0400000003f000060c0000000000000803f0000000037904cff0000003f000080be0000d0400000003f000090c0000000000000803f0000000037904cff0000e03e0000a0be0000f0400000003f000090c0000000000000803f0000000037904cff0000003f0000a0be0000d0400000003f000090c00000000000000000000080bf37904cff000020bf000000800000f0400000003f000090c00000000000000000000080bf37904cff000010bf000000800000d040cdccccbe000090c00000000000000000000080bf37904cff000020bf000080bd0000f040cdccccbe000090c00000000000000000000080bf37904cff000010bf000080bd0000f0400000003f000090c00000803f000000000000000037904cff0000a0be000000800000f0400000003f000060c00000803f000000000000000037904cff000080be000000800000f040cdccccbe000090c00000803f000000000000000037904cff0000a0be000080bd0000f040cdccccbe000060c00000803f000000000000000037904cff000080be000080bd0000d040cdccccbe000090c0000000000000803f00000000fff114ff0000e03e0000a0be0000f040cdccccbe000090c0000000000000803f00000000fff114ff0000003f0000a0be0000d040cdccccbe0000b0c0000000000000803f00000000fff114ff0000e03e0000c0be0000f040cdccccbe0000b0c0000000000000803f00000000fff114ff0000003f0000c0be0000d040cdccccbe0000b0c00000000000000000000080bffff114ff000020bf000000800000f040cdccccbe0000b0c00000000000000000000080bffff114ff000010bf000000800000d040000000bf0000b0c00000000000000000000080bffff114ff000020bf000080bd0000f040000000bf0000b0c00000000000000000000080bffff114ff000010bf000080bd0000d040cdccccbe000008c1000000000000803f00000000f51435ff0000e03e000010bf0000f040cdccccbe000008c1000000000000803f00000000f51435ff0000003f000010bf0000d040cdccccbe000018c1000000000000803f00000000f51435ff0000e03e000020bf0000f040cdccccbe000018c1000000000000803f00000000f51435ff0000003f000020bf0000f040cdccccbe000008c100000000000000000000803ff51435ff000000bf000000800000d040cdccccbe000008c100000000000000000000803ff51435ff0000e0be000000800000f040000000bf000008c100000000000000000000803ff51435ff000000bf000080bd0000d040000000bf000008c100000000000000000000803ff51435ff0000e0be000080bd0000d0400000003f000018c1000000000000803f0000000037904cff0000e03e000020bf0000f0400000003f000018c1000000000000803f0000000037904cff0000003f000020bf0000d0400000003f000028c1000000000000803f0000000037904cff0000e03e000030bf0000f0400000003f000028c1000000000000803f0000000037904cff0000003f000030bf0000f0400000003f000018c100000000000000000000803f37904cff000000bf000000800000d0400000003f000018c100000000000000000000803f37904cff0000e0be000000800000f040cdccccbe000018c100000000000000000000803f37904cff000000bf000080bd0000d040cdccccbe000018c100000000000000000000803f37904cff0000e0be000080bd0000d0400000003f000028c1000000000000803f00000000ffffffff0000e03e000030bf0000f0400000003f000028c1000000000000803f00000000ffffffff0000003f000030bf0000d0400000003f000038c1000000000000803f00000000ffffffff0000e03e000040bf0000f0400000003f000038c1000000000000803f00000000ffffffff0000003f000040bf0000d0400000003f000038c10000000000000000000080bfffffffff000020bf000000800000f0400000003f000038c10000000000000000000080bfffffffff000010bf000000800000d040cdccccbe000038c10000000000000000000080bfffffffff000020bf000080bd0000f040cdccccbe000038c10000000000000000000080bfffffffff000010bf000080bd0000f0400000003f000038c10000803f0000000000000000ffffffff000040bf000000800000f0400000003f000028c10000803f0000000000000000ffffffff000030bf000000800000f040cdccccbe000038c10000803f0000000000000000ffffffff000040bf000080bd0000f040cdccccbe000028c10000803f0000000000000000ffffffff000030bf000080bd0000d0400000003f000028c1000080bf0000000000000000ffffffff0000c0be000000800000d0400000003f000038c1000080bf0000000000000000ffffffff0000a0be000000800000d040cdccccbe000028c1000080bf0000000000000000ffffffff0000c0be000080bd0000d040cdccccbe000038c1000080bf0000000000000000ffffffff0000a0be000080bd0000d040cdccccbe000038c1000000000000803f0000000097ab2cff0000e03e000040bf0000f040cdccccbe000038c1000000000000803f0000000097ab2cff0000003f000040bf0000d040cdccccbe000048c1000000000000803f0000000097ab2cff0000e03e000050bf0000f040cdccccbe000048c1000000000000803f0000000097ab2cff0000003f000050bf0000d0400000003f000048c1000000000000803f00000000ffffffff0000e03e000050bf0000f0400000003f000048c1000000000000803f00000000ffffffff0000003f000050bf0000d0400000003f000058c1000000000000803f00000000ffffffff0000e03e000060bf0000f0400000003f000058c1000000000000803f00000000ffffffff0000003f000060bf0000f0400000003f000048c100000000000000000000803fffffffff000000bf000000800000d0400000003f000048c100000000000000000000803fffffffff0000e0be000000800000f040cdccccbe000048c100000000000000000000803fffffffff000000bf000080bd0000d040cdccccbe000048c100000000000000000000803fffffffff0000e0be000080bd0000d0400000003f000058c1000000000000803f00000000ffffffff0000e03e000060bf0000f0400000003f000058c1000000000000803f00000000ffffffff0000003f000060bf0000d0400000003f000068c1000000000000803f00000000ffffffff0000e03e000070bf0000f0400000003f000068c1000000000000803f00000000ffffffff0000003f000070bf0000d0400000003f000068c1000000000000803f00000000ffffffff0000e03e000070bf0000f0400000003f000068c1000000000000803f00000000ffffffff0000003f000070bf0000d0400000003f000078c1000000000000803f00000000ffffffff0000e03e000080bf0000f0400000003f000078c1000000000000803f00000000ffffffff0000003f000080bf0000d0400000003f000078c10000000000000000000080bfffffffff000020bf000000800000f0400000003f000078c10000000000000000000080bfffffffff000010bf000000800000d040000000bf000078c10000000000000000000080bfffffffff000020bf000080bd0000f040000000bf000078c10000000000000000000080bfffffffff000010bf000080bd0000f040cdccccbe0000003f000000000000803f00000000ffffffff0000003f0000008000000841cdccccbe0000003f000000000000803f00000000ffffffff0000103f000000800000f040cdccccbe000000bf000000000000803f00000000ffffffff0000003f000080bd00000841cdccccbe000000bf000000000000803f00000000ffffffff0000103f000080bd00000841cdccccbe0000003f00000000000000000000803fffffffff000010bf000000800000f040cdccccbe0000003f00000000000000000000803fffffffff000000bf0000008000000841000000bf0000003f00000000000000000000803fffffffff000010bf000080bd0000f040000000bf0000003f00000000000000000000803fffffffff000000bf000080bd0000f040cdccccbe000000bf000000000000803f00000000ffffffff0000003f000080bd00000841cdccccbe000000bf000000000000803f00000000ffffffff0000103f000080bd0000f040cdccccbe0000c0bf000000000000803f00000000ffffffff0000003f000000be00000841cdccccbe0000c0bf000000000000803f00000000ffffffff0000103f000000be0000f040cdccccbe0000c0bf000000000000803f00000000ffffffff0000003f000000be00000841cdccccbe0000c0bf000000000000803f00000000ffffffff0000103f000000be0000f040cdccccbe000020c0000000000000803f00000000ffffffff0000003f000040be00000841cdccccbe000020c0000000000000803f00000000ffffffff0000103f000040be0000f040cdccccbe000020c0000000000000803f00000000ffffffff0000003f000040be00000841cdccccbe000020c0000000000000803f00000000ffffffff0000103f000040be0000f040cdccccbe000060c0000000000000803f00000000ffffffff0000003f000080be00000841cdccccbe000060c0000000000000803f00000000ffffffff0000103f000080be0000f040cdccccbe000060c0000000000000803f00000000ffffffff0000003f000080be00000841cdccccbe000060c0000000000000803f00000000ffffffff0000103f000080be0000f040cdccccbe000090c0000000000000803f00000000ffffffff0000003f0000a0be00000841cdccccbe000090c0000000000000803f00000000ffffffff0000103f0000a0be0000f040cdccccbe000090c0000000000000803f00000000ffffffff0000003f0000a0be00000841cdccccbe000090c0000000000000803f00000000ffffffff0000103f0000a0be0000f040cdccccbe0000b0c0000000000000803f00000000ffffffff0000003f0000c0be00000841cdccccbe0000b0c0000000000000803f00000000ffffffff0000103f0000c0be0000f040cdccccbe0000b0c00000000000000000000080bfffffffff000010bf0000008000000841cdccccbe0000b0c00000000000000000000080bfffffffff000000bf000000800000f040000000bf0000b0c00000000000000000000080bfffffffff000010bf000080bd00000841000000bf0000b0c00000000000000000000080bfffffffff000000bf000080bd0000f040cdccccbe000008c1000000000000803f00000000f51435ff0000003f000010bf00000841cdccccbe000008c1000000000000803f00000000f51435ff0000103f000010bf0000f040cdccccbe000018c1000000000000803f00000000f51435ff0000003f000020bf00000841cdccccbe000018c1000000000000803f00000000f51435ff0000103f000020bf00000841cdccccbe000008c100000000000000000000803ff51435ff000010bf000000800000f040cdccccbe000008c100000000000000000000803ff51435ff000000bf0000008000000841000000bf000008c100000000000000000000803ff51435ff000010bf000080bd0000f040000000bf000008c100000000000000000000803ff51435ff000000bf000080bd0000f0400000003f000018c1000000000000803f0000000037904cff0000003f000020bf000008410000003f000018c1000000000000803f0000000037904cff0000103f000020bf0000f0400000003f000028c1000000000000803f0000000037904cff0000003f000030bf000008410000003f000028c1000000000000803f0000000037904cff0000103f000030bf000008410000003f000018c100000000000000000000803f37904cff000010bf000000800000f0400000003f000018c100000000000000000000803f37904cff000000bf0000008000000841cdccccbe000018c100000000000000000000803f37904cff000010bf000080bd0000f040cdccccbe000018c100000000000000000000803f37904cff000000bf000080bd0000f0400000003f000028c10000000000000000000080bf37904cff000010bf00000080000008410000003f000028c10000000000000000000080bf37904cff000000bf000000800000f040cdccccbe000028c10000000000000000000080bf37904cff000010bf000080bd00000841cdccccbe000028c10000000000000000000080bf37904cff000000bf000080bd0000f040cdccccbe000028c1000000000000803f0000000097ab2cff0000003f000030bf00000841cdccccbe000028c1000000000000803f0000000097ab2cff0000103f000030bf0000f040cdccccbe000038c1000000000000803f0000000097ab2cff0000003f000040bf00000841cdccccbe000038c1000000000000803f0000000097ab2cff0000103f000040bf0000f040cdccccbe000038c1000000000000803f0000000097ab2cff0000003f000040bf00000841cdccccbe000038c1000000000000803f0000000097ab2cff0000103f000040bf0000f040cdccccbe000048c1000000000000803f0000000097ab2cff0000003f000050bf00000841cdccccbe000048c1000000000000803f0000000097ab2cff0000103f000050bf0000f0400000003f000048c1000000000000803f00000000ffffffff0000003f000050bf000008410000003f000048c1000000000000803f00000000ffffffff0000103f000050bf0000f0400000003f000058c1000000000000803f00000000ffffffff0000003f000060bf000008410000003f000058c1000000000000803f00000000ffffffff0000103f000060bf000008410000003f000048c100000000000000000000803fffffffff000010bf000000800000f0400000003f000048c100000000000000000000803fffffffff000000bf0000008000000841cdccccbe000048c100000000000000000000803fffffffff000010bf000080bd0000f040cdccccbe000048c100000000000000000000803fffffffff000000bf000080bd0000f0400000003f000058c1000000000000803f00000000ffffffff0000003f000060bf000008410000003f000058c1000000000000803f00000000ffffffff0000103f000060bf0000f0400000003f000068c1000000000000803f00000000ffffffff0000003f000070bf000008410000003f000068c1000000000000803f00000000ffffffff0000103f000070bf0000f0400000003f000068c1000000000000803f00000000ffffffff0000003f000070bf000008410000003f000068c1000000000000803f00000000ffffffff0000103f000070bf0000f0400000003f000078c1000000000000803f00000000ffffffff0000003f000080bf000008410000003f000078c1000000000000803f00000000ffffffff0000103f000080bf0000f0400000003f000078c10000000000000000000080bfffffffff000010bf00000080000008410000003f000078c10000000000000000000080bfffffffff000000bf000000800000f040000000bf000078c10000000000000000000080bfffffffff000010bf000080bd00000841000000bf000078c10000000000000000000080bfffffffff000000bf000080bd000008410000003f0000003f000000000000803f00000000ffffffff0000103f00000080000018410000003f0000003f000000000000803f00000000ffffffff0000203f00000080000008410000003f000000bf000000000000803f00000000ffffffff0000103f000080bd000018410000003f000000bf000000000000803f00000000ffffffff0000203f000080bd000018410000003f0000003f00000000000000000000803fffffffff000020bf00000080000008410000003f0000003f00000000000000000000803fffffffff000010bf0000008000001841000000bf0000003f00000000000000000000803fffffffff000020bf000080bd00000841000000bf0000003f00000000000000000000803fffffffff000010bf000080bd000008410000003f0000003f000080bf0000000000000000ffffffff000088bf00000080000008410000003f000000bf000080bf0000000000000000ffffffff000080bf0000008000000841cdccccbe0000003f000080bf0000000000000000ffffffff000088bf000080bd00000841cdccccbe000000bf000080bf0000000000000000ffffffff000080bf000080bd000008410000003f000000bf000000000000803f00000000ffffffff0000103f000080bd000018410000003f000000bf000000000000803f00000000ffffffff0000203f000080bd000008410000003f0000c0bf000000000000803f00000000ffffffff0000103f000000be000018410000003f0000c0bf000000000000803f00000000ffffffff0000203f000000be000008410000003f000000bf000080bf0000000000000000ffffffff000080bf00000080000008410000003f0000c0bf000080bf0000000000000000ffffffff000070bf0000008000000841cdccccbe000000bf000080bf0000000000000000ffffffff000080bf000080bd00000841cdccccbe0000c0bf000080bf0000000000000000ffffffff000070bf000080bd000008410000003f0000c0bf000000000000803f00000000ffffffff0000103f000000be000018410000003f0000c0bf000000000000803f00000000ffffffff0000203f000000be000008410000003f000020c0000000000000803f00000000ffffffff0000103f000040be000018410000003f000020c0000000000000803f00000000ffffffff0000203f000040be000008410000003f0000c0bf000080bf0000000000000000ffffffff000070bf00000080000008410000003f000020c0000080bf0000000000000000ffffffff000060bf0000008000000841cdccccbe0000c0bf000080bf0000000000000000ffffffff000070bf000080bd00000841cdccccbe000020c0000080bf0000000000000000ffffffff000060bf000080bd000008410000003f000020c0000000000000803f0000000037904cff0000103f000040be000018410000003f000020c0000000000000803f0000000037904cff0000203f000040be000008410000003f000060c0000000000000803f0000000037904cff0000103f000080be000018410000003f000060c0000000000000803f0000000037904cff0000203f000080be000008410000003f000020c0000080bf000000000000000037904cff000060bf00000080000008410000003f000060c0000080bf000000000000000037904cff000050bf0000008000000841cdccccbe000020c0000080bf000000000000000037904cff000060bf000080bd00000841cdccccbe000060c0000080bf000000000000000037904cff000050bf000080bd000008410000003f000060c0000000000000803f0000000037904cff0000103f000080be000018410000003f000060c0000000000000803f0000000037904cff0000203f000080be000008410000003f000090c0000000000000803f0000000037904cff0000103f0000a0be000018410000003f000090c0000000000000803f0000000037904cff0000203f0000a0be000008410000003f000090c00000000000000000000080bf37904cff000000bf00000080000018410000003f000090c00000000000000000000080bf37904cff0000e0be0000008000000841cdccccbe000090c00000000000000000000080bf37904cff000000bf000080bd00001841cdccccbe000090c00000000000000000000080bf37904cff0000e0be000080bd000008410000003f000060c0000080bf000000000000000037904cff000050bf00000080000008410000003f000090c0000080bf000000000000000037904cff000040bf0000008000000841cdccccbe000060c0000080bf000000000000000037904cff000050bf000080bd00000841cdccccbe000090c0000080bf000000000000000037904cff000040bf000080bd00000841cdccccbe000090c0000000000000803f00000000fff114ff0000103f0000a0be00001841cdccccbe000090c0000000000000803f00000000fff114ff0000203f0000a0be00000841cdccccbe0000b0c0000000000000803f00000000fff114ff0000103f0000c0be00001841cdccccbe0000b0c0000000000000803f00000000fff114ff0000203f0000c0be00000841cdccccbe0000b0c00000000000000000000080bffff114ff000000bf0000008000001841cdccccbe0000b0c00000000000000000000080bffff114ff0000e0be0000008000000841000000bf0000b0c00000000000000000000080bffff114ff000000bf000080bd00001841000000bf0000b0c00000000000000000000080bffff114ff0000e0be000080bd00000841cdccccbe000008c1000000000000803f00000000f51435ff0000103f000010bf00001841cdccccbe000008c1000000000000803f00000000f51435ff0000203f000010bf00000841cdccccbe000018c1000000000000803f00000000f51435ff0000103f000020bf00001841cdccccbe000018c1000000000000803f00000000f51435ff0000203f000020bf00001841cdccccbe000008c100000000000000000000803ff51435ff000020bf0000008000000841cdccccbe000008c100000000000000000000803ff51435ff000010bf0000008000001841000000bf000008c100000000000000000000803ff51435ff000020bf000080bd00000841000000bf000008c100000000000000000000803ff51435ff000010bf000080bd000008410000003f000018c1000000000000803f0000000037904cff0000103f000020bf000018410000003f000018c1000000000000803f0000000037904cff0000203f000020bf000008410000003f000028c1000000000000803f0000000037904cff0000103f000030bf000018410000003f000028c1000000000000803f0000000037904cff0000203f000030bf000018410000003f000018c100000000000000000000803f37904cff000020bf00000080000008410000003f000018c100000000000000000000803f37904cff000010bf0000008000001841cdccccbe000018c100000000000000000000803f37904cff000020bf000080bd00000841cdccccbe000018c100000000000000000000803f37904cff000010bf000080bd000008410000003f000028c1000000000000803f00000000ffffffff0000103f000030bf000018410000003f000028c1000000000000803f00000000ffffffff0000203f000030bf000008410000003f000038c1000000000000803f00000000ffffffff0000103f000040bf000018410000003f000038c1000000000000803f00000000ffffffff0000203f000040bf000008410000003f000038c10000000000000000000080bfffffffff000000bf00000080000018410000003f000038c10000000000000000000080bfffffffff0000e0be0000008000000841cdccccbe000038c10000000000000000000080bfffffffff000000bf000080bd00001841cdccccbe000038c10000000000000000000080bfffffffff0000e0be000080bd000018410000003f000038c10000803f0000000000000000ffffffff000040bf00000080000018410000003f000028c10000803f0000000000000000ffffffff000030bf0000008000001841cdccccbe000038c10000803f0000000000000000ffffffff000040bf000080bd00001841cdccccbe000028c10000803f0000000000000000ffffffff000030bf000080bd000008410000003f000028c1000080bf0000000000000000ffffffff0000c0be00000080000008410000003f000038c1000080bf0000000000000000ffffffff0000a0be0000008000000841cdccccbe000028c1000080bf0000000000000000ffffffff0000c0be000080bd00000841cdccccbe000038c1000080bf0000000000000000ffffffff0000a0be000080bd00000841cdccccbe000038c1000000000000803f0000000097ab2cff0000103f000040bf00001841cdccccbe000038c1000000000000803f0000000097ab2cff0000203f000040bf00000841cdccccbe000048c1000000000000803f0000000097ab2cff0000103f000050bf00001841cdccccbe000048c1000000000000803f0000000097ab2cff0000203f000050bf000008410000003f000048c1000000000000803f00000000ffffffff0000103f000050bf000018410000003f000048c1000000000000803f00000000ffffffff0000203f000050bf000008410000003f000058c1000000000000803f00000000ffffffff0000103f000060bf000018410000003f000058c1000000000000803f00000000ffffffff0000203f000060bf000018410000003f000048c100000000000000000000803fffffffff000020bf00000080000008410000003f000048c100000000000000000000803fffffffff000010bf0000008000001841cdccccbe000048c100000000000000000000803fffffffff000020bf000080bd00000841cdccccbe000048c100000000000000000000803fffffffff000010bf000080bd000008410000003f000058c1000000000000803f00000000ffffffff0000103f000060bf000018410000003f000058c1000000000000803f00000000ffffffff0000203f000060bf000008410000003f000068c1000000000000803f00000000ffffffff0000103f000070bf000018410000003f000068c1000000000000803f00000000ffffffff0000203f000070bf000008410000003f000068c1000000000000803f00000000ffffffff0000103f000070bf000018410000003f000068c1000000000000803f00000000ffffffff0000203f000070bf000008410000003f000078c1000000000000803f00000000ffffffff0000103f000080bf000018410000003f000078c1000000000000803f00000000ffffffff0000203f000080bf000008410000003f000078c10000000000000000000080bfffffffff000000bf00000080000018410000003f000078c10000000000000000000080bfffffffff0000e0be0000008000000841000000bf000078c10000000000000000000080bfffffffff000000bf000080bd00001841000000bf000078c10000000000000000000080bfffffffff0000e0be000080bd000018410000003f0000003f000000000000803f00000000ffffffff0000203f00000080000028410000003f0000003f000000000000803f00000000ffffffff0000303f00000080000018410000003f000000bf000000000000803f00000000ffffffff0000203f000080bd000028410000003f000000bf000000000000803f00000000ffffffff0000303f000080bd000028410000003f0000003f00000000000000000000803fffffffff000030bf00000080000018410000003f0000003f00000000000000000000803fffffffff000020bf0000008000002841000000bf0000003f00000000000000000000803fffffffff000030bf000080bd00001841000000bf0000003f00000000000000000000803fffffffff000020bf000080bd000018410000003f000000bf000000000000803f00000000ffffffff0000203f000080bd000028410000003f000000bf000000000000803f00000000ffffffff0000303f000080bd000018410000003f0000c0bf000000000000803f00000000ffffffff0000203f000000be000028410000003f0000c0bf000000000000803f00000000ffffffff0000303f000000be000018410000003f0000c0bf000000000000803f00000000ffffffff0000203f000000be000028410000003f0000c0bf000000000000803f00000000ffffffff0000303f000000be000018410000003f000020c0000000000000803f00000000ffffffff0000203f000040be000028410000003f000020c0000000000000803f00000000ffffffff0000303f000040be000018410000003f000020c0000000000000803f0000000037904cff0000203f000040be000028410000003f000020c0000000000000803f0000000037904cff0000303f000040be000018410000003f000060c0000000000000803f0000000037904cff0000203f000080be000028410000003f000060c0000000000000803f0000000037904cff0000303f000080be000028410000003f000060c00000803f000000000000000037904cff000080be00000080000028410000003f000020c00000803f000000000000000037904cff000040be0000008000002841cdccccbe000060c00000803f000000000000000037904cff000080be000080bd00002841cdccccbe000020c00000803f000000000000000037904cff000040be000080bd000018410000003f000060c0000000000000803f0000000037904cff0000203f000080be000028410000003f000060c0000000000000803f0000000037904cff0000303f000080be000018410000003f000090c0000000000000803f0000000037904cff0000203f0000a0be000028410000003f000090c0000000000000803f0000000037904cff0000303f0000a0be000018410000003f000090c00000000000000000000080bf37904cff0000e0be00000080000028410000003f000090c00000000000000000000080bf37904cff0000c0be0000008000001841cdccccbe000090c00000000000000000000080bf37904cff0000e0be000080bd00002841cdccccbe000090c00000000000000000000080bf37904cff0000c0be000080bd000028410000003f000090c00000803f000000000000000037904cff0000a0be00000080000028410000003f000060c00000803f000000000000000037904cff000080be0000008000002841cdccccbe000090c00000803f000000000000000037904cff0000a0be000080bd00002841cdccccbe000060c00000803f000000000000000037904cff000080be000080bd00001841cdccccbe000090c0000000000000803f00000000fff114ff0000203f0000a0be00002841cdccccbe000090c0000000000000803f00000000fff114ff0000303f0000a0be00001841cdccccbe0000b0c0000000000000803f00000000fff114ff0000203f0000c0be00002841cdccccbe0000b0c0000000000000803f00000000fff114ff0000303f0000c0be00001841cdccccbe0000b0c00000000000000000000080bffff114ff0000e0be0000008000002841cdccccbe0000b0c00000000000000000000080bffff114ff0000c0be0000008000001841000000bf0000b0c00000000000000000000080bffff114ff0000e0be000080bd00002841000000bf0000b0c00000000000000000000080bffff114ff0000c0be000080bd00001841cdccccbe000008c1000000000000803f00000000f51435ff0000203f000010bf00002841cdccccbe000008c1000000000000803f00000000f51435ff0000303f000010bf00001841cdccccbe000018c1000000000000803f00000000f51435ff0000203f000020bf00002841cdccccbe000018c1000000000000803f00000000f51435ff0000303f000020bf00002841cdccccbe000008c100000000000000000000803ff51435ff000030bf0000008000001841cdccccbe000008c100000000000000000000803ff51435ff000020bf0000008000002841000000bf000008c100000000000000000000803ff51435ff000030bf000080bd00001841000000bf000008c100000000000000000000803ff51435ff000020bf000080bd000018410000003f000018c1000000000000803f0000000037904cff0000203f000020bf000028410000003f000018c1000000000000803f0000000037904cff0000303f000020bf000018410000003f000028c1000000000000803f0000000037904cff0000203f000030bf000028410000003f000028c1000000000000803f0000000037904cff0000303f000030bf000028410000003f000018c100000000000000000000803f37904cff000030bf00000080000018410000003f000018c100000000000000000000803f37904cff000020bf0000008000002841cdccccbe000018c100000000000000000000803f37904cff000030bf000080bd00001841cdccccbe000018c100000000000000000000803f37904cff000020bf000080bd000018410000003f000028c10000000000000000000080bf37904cff0000e0be00000080000028410000003f000028c10000000000000000000080bf37904cff0000c0be0000008000001841cdccccbe000028c10000000000000000000080bf37904cff0000e0be000080bd00002841cdccccbe000028c10000000000000000000080bf37904cff0000c0be000080bd00001841cdccccbe000028c1000000000000803f0000000097ab2cff0000203f000030bf00002841cdccccbe000028c1000000000000803f0000000097ab2cff0000303f000030bf00001841cdccccbe000038c1000000000000803f0000000097ab2cff0000203f000040bf00002841cdccccbe000038c1000000000000803f0000000097ab2cff0000303f000040bf00001841cdccccbe000038c1000000000000803f0000000097ab2cff0000203f000040bf00002841cdccccbe000038c1000000000000803f0000000097ab2cff0000303f000040bf00001841cdccccbe000048c1000000000000803f0000000097ab2cff0000203f000050bf00002841cdccccbe000048c1000000000000803f0000000097ab2cff0000303f000050bf000018410000003f000048c1000000000000803f00000000ffffffff0000203f000050bf000028410000003f000048c1000000000000803f00000000ffffffff0000303f000050bf000018410000003f000058c1000000000000803f00000000ffffffff0000203f000060bf000028410000003f000058c1000000000000803f00000000ffffffff0000303f000060bf000028410000003f000048c100000000000000000000803fffffffff000030bf00000080000018410000003f000048c100000000000000000000803fffffffff000020bf0000008000002841cdccccbe000048c100000000000000000000803fffffffff000030bf000080bd00001841cdccccbe000048c100000000000000000000803fffffffff000020bf000080bd000018410000003f000058c1000000000000803f00000000ffffffff0000203f000060bf000028410000003f000058c1000000000000803f00000000ffffffff0000303f000060bf000018410000003f000068c1000000000000803f00000000ffffffff0000203f000070bf000028410000003f000068c1000000000000803f00000000ffffffff0000303f000070bf000018410000003f000068c1000000000000803f00000000ffffffff0000203f000070bf000028410000003f000068c1000000000000803f00000000ffffffff0000303f000070bf000018410000003f000078c1000000000000803f00000000ffffffff0000203f000080bf000028410000003f000078c1000000000000803f00000000ffffffff0000303f000080bf000018410000003f000078c10000000000000000000080bfffffffff0000e0be00000080000028410000003f000078c10000000000000000000080bfffffffff0000c0be0000008000001841000000bf000078c10000000000000000000080bfffffffff0000e0be000080bd00002841000000bf000078c10000000000000000000080bfffffffff0000c0be000080bd000028410000003f0000003f000000000000803f00000000ffffffff0000303f00000080000038410000003f0000003f000000000000803f00000000ffffffff0000403f00000080000028410000003f000000bf000000000000803f00000000ffffffff0000303f000080bd000038410000003f000000bf000000000000803f00000000ffffffff0000403f000080bd000038410000003f0000003f00000000000000000000803fffffffff000040bf00000080000028410000003f0000003f00000000000000000000803fffffffff000030bf0000008000003841000000bf0000003f00000000000000000000803fffffffff000040bf000080bd00002841000000bf0000003f00000000000000000000803fffffffff000030bf000080bd000028410000003f000000bf000000000000803f00000000ffffffff0000303f000080bd000038410000003f000000bf000000000000803f00000000ffffffff0000403f000080bd000028410000003f0000c0bf000000000000803f00000000ffffffff0000303f000000be000038410000003f0000c0bf000000000000803f00000000ffffffff0000403f000000be000028410000003f0000c0bf000000000000803f00000000ffffffff0000303f000000be000038410000003f0000c0bf000000000000803f00000000ffffffff0000403f000000be000028410000003f000020c0000000000000803f00000000ffffffff0000303f000040be000038410000003f000020c0000000000000803f00000000ffffffff0000403f000040be000028410000003f000020c00000000000000000000080bfffffffff0000c0be00000080000038410000003f000020c00000000000000000000080bfffffffff0000a0be0000008000002841cdccccbe000020c00000000000000000000080bfffffffff0000c0be000080bd00003841cdccccbe000020c00000000000000000000080bfffffffff0000a0be000080bd00002841cdccccbe000020c0000000000000803f000000002814f5ff0000303f000040be00003841cdccccbe000020c0000000000000803f000000002814f5ff0000403f000040be00002841cdccccbe000060c0000000000000803f000000002814f5ff0000303f000080be00003841cdccccbe000060c0000000000000803f000000002814f5ff0000403f000080be00002841cdccccbe000060c0000000000000803f000000002814f5ff0000303f000080be00003841cdccccbe000060c0000000000000803f000000002814f5ff0000403f000080be00002841cdccccbe000090c0000000000000803f000000002814f5ff0000303f0000a0be00003841cdccccbe000090c0000000000000803f000000002814f5ff0000403f0000a0be00002841cdccccbe000090c0000000000000803f00000000fff114ff0000303f0000a0be00003841cdccccbe000090c0000000000000803f00000000fff114ff0000403f0000a0be00002841cdccccbe0000b0c0000000000000803f00000000fff114ff0000303f0000c0be00003841cdccccbe0000b0c0000000000000803f00000000fff114ff0000403f0000c0be00002841cdccccbe0000b0c0000000000000803f00000000fff114ff0000303f0000c0be00003841cdccccbe0000b0c0000000000000803f00000000fff114ff0000403f0000c0be00002841cdccccbe0000d0c0000000000000803f00000000fff114ff0000303f0000e0be00003841cdccccbe0000d0c0000000000000803f00000000fff114ff0000403f0000e0be00002841cdccccbe0000b0c0000080bf0000000000000000fff114ff000030bf0000008000002841cdccccbe0000d0c0000080bf0000000000000000fff114ff000020bf0000008000002841000000bf0000b0c0000080bf0000000000000000fff114ff000030bf000080bd00002841000000bf0000d0c0000080bf0000000000000000fff114ff000020bf000080bd00002841cdccccbe0000d0c0000000000000803f00000000fff114ff0000303f0000e0be00003841cdccccbe0000d0c0000000000000803f00000000fff114ff0000403f0000e0be00002841cdccccbe0000f0c0000000000000803f00000000fff114ff0000303f000000bf00003841cdccccbe0000f0c0000000000000803f00000000fff114ff0000403f000000bf00002841cdccccbe0000d0c0000080bf0000000000000000fff114ff000020bf0000008000002841cdccccbe0000f0c0000080bf0000000000000000fff114ff000010bf0000008000002841000000bf0000d0c0000080bf0000000000000000fff114ff000020bf000080bd00002841000000bf0000f0c0000080bf0000000000000000fff114ff000010bf000080bd00002841cdccccbe0000f0c0000000000000803f0000000097ab2cff0000303f000000bf00003841cdccccbe0000f0c0000000000000803f0000000097ab2cff0000403f000000bf00002841cdccccbe000008c1000000000000803f0000000097ab2cff0000303f000010bf00003841cdccccbe000008c1000000000000803f0000000097ab2cff0000403f000010bf00002841cdccccbe0000f0c0000080bf000000000000000097ab2cff000010bf0000008000002841cdccccbe000008c1000080bf000000000000000097ab2cff000000bf0000008000002841000000bf0000f0c0000080bf000000000000000097ab2cff000010bf000080bd00002841000000bf000008c1000080bf000000000000000097ab2cff000000bf000080bd00002841cdccccbe000008c1000000000000803f00000000f51435ff0000303f000010bf00003841cdccccbe000008c1000000000000803f00000000f51435ff0000403f000010bf00002841cdccccbe000018c1000000000000803f00000000f51435ff0000303f000020bf00003841cdccccbe000018c1000000000000803f00000000f51435ff0000403f000020bf000028410000003f000018c1000000000000803f0000000037904cff0000303f000020bf000038410000003f000018c1000000000000803f0000000037904cff0000403f000020bf000028410000003f000028c1000000000000803f0000000037904cff0000303f000030bf000038410000003f000028c1000000000000803f0000000037904cff0000403f000030bf000038410000003f000018c100000000000000000000803f37904cff000040bf00000080000028410000003f000018c100000000000000000000803f37904cff000030bf0000008000003841cdccccbe000018c100000000000000000000803f37904cff000040bf000080bd00002841cdccccbe000018c100000000000000000000803f37904cff000030bf000080bd000028410000003f000028c10000000000000000000080bf37904cff0000c0be00000080000038410000003f000028c10000000000000000000080bf37904cff0000a0be0000008000002841cdccccbe000028c10000000000000000000080bf37904cff0000c0be000080bd00003841cdccccbe000028c10000000000000000000080bf37904cff0000a0be000080bd000038410000003f000028c10000803f000000000000000037904cff000030bf00000080000038410000003f000018c10000803f000000000000000037904cff000020bf0000008000003841cdccccbe000028c10000803f000000000000000037904cff000030bf000080bd00003841cdccccbe000018c10000803f000000000000000037904cff000020bf000080bd00002841cdccccbe000028c1000000000000803f0000000097ab2cff0000303f000030bf00003841cdccccbe000028c1000000000000803f0000000097ab2cff0000403f000030bf00002841cdccccbe000038c1000000000000803f0000000097ab2cff0000303f000040bf00003841cdccccbe000038c1000000000000803f0000000097ab2cff0000403f000040bf00002841cdccccbe000038c1000000000000803f0000000097ab2cff0000303f000040bf00003841cdccccbe000038c1000000000000803f0000000097ab2cff0000403f000040bf00002841cdccccbe000048c1000000000000803f0000000097ab2cff0000303f000050bf00003841cdccccbe000048c1000000000000803f0000000097ab2cff0000403f000050bf000028410000003f000048c1000000000000803f00000000ffffffff0000303f000050bf000038410000003f000048c1000000000000803f00000000ffffffff0000403f000050bf000028410000003f000058c1000000000000803f00000000ffffffff0000303f000060bf000038410000003f000058c1000000000000803f00000000ffffffff0000403f000060bf000038410000003f000048c100000000000000000000803fffffffff000040bf00000080000028410000003f000048c100000000000000000000803fffffffff000030bf0000008000003841cdccccbe000048c100000000000000000000803fffffffff000040bf000080bd00002841cdccccbe000048c100000000000000000000803fffffffff000030bf000080bd000028410000003f000058c1000000000000803f00000000ffffffff0000303f000060bf000038410000003f000058c1000000000000803f00000000ffffffff0000403f000060bf000028410000003f000068c1000000000000803f00000000ffffffff0000303f000070bf000038410000003f000068c1000000000000803f00000000ffffffff0000403f000070bf000028410000003f000068c1000000000000803f00000000ffffffff0000303f000070bf000038410000003f000068c1000000000000803f00000000ffffffff0000403f000070bf000028410000003f000078c1000000000000803f00000000ffffffff0000303f000080bf000038410000003f000078c1000000000000803f00000000ffffffff0000403f000080bf000028410000003f000078c10000000000000000000080bfffffffff0000c0be00000080000038410000003f000078c10000000000000000000080bfffffffff0000a0be0000008000002841000000bf000078c10000000000000000000080bfffffffff0000c0be000080bd00003841000000bf000078c10000000000000000000080bfffffffff0000a0be000080bd000038410000003f0000003f000000000000803f00000000ffffffff0000403f00000080000048410000003f0000003f000000000000803f00000000ffffffff0000503f00000080000038410000003f000000bf000000000000803f00000000ffffffff0000403f000080bd000048410000003f000000bf000000000000803f00000000ffffffff0000503f000080bd000048410000003f0000003f00000000000000000000803fffffffff000050bf00000080000038410000003f0000003f00000000000000000000803fffffffff000040bf0000008000004841000000bf0000003f00000000000000000000803fffffffff000050bf000080bd00003841000000bf0000003f00000000000000000000803fffffffff000040bf000080bd000038410000003f000000bf000000000000803f00000000ffffffff0000403f000080bd000048410000003f000000bf000000000000803f00000000ffffffff0000503f000080bd000038410000003f0000c0bf000000000000803f00000000ffffffff0000403f000000be000048410000003f0000c0bf000000000000803f00000000ffffffff0000503f000000be000038410000003f0000c0bf000000000000803f00000000ffffffff0000403f000000be000048410000003f0000c0bf000000000000803f00000000ffffffff0000503f000000be000038410000003f000020c0000000000000803f00000000ffffffff0000403f000040be000048410000003f000020c0000000000000803f00000000ffffffff0000503f000040be000038410000003f000020c00000000000000000000080bfffffffff0000a0be00000080000048410000003f000020c00000000000000000000080bfffffffff000080be0000008000003841cdccccbe000020c00000000000000000000080bfffffffff0000a0be000080bd00004841cdccccbe000020c00000000000000000000080bfffffffff000080be000080bd00003841cdccccbe000020c0000000000000803f000000002814f5ff0000403f000040be00004841cdccccbe000020c0000000000000803f000000002814f5ff0000503f000040be00003841cdccccbe000060c0000000000000803f000000002814f5ff0000403f000080be00004841cdccccbe000060c0000000000000803f000000002814f5ff0000503f000080be00003841cdccccbe000060c0000000000000803f000000002814f5ff0000403f000080be00004841cdccccbe000060c0000000000000803f000000002814f5ff0000503f000080be00003841cdccccbe000090c0000000000000803f000000002814f5ff0000403f0000a0be00004841cdccccbe000090c0000000000000803f000000002814f5ff0000503f0000a0be00003841cdccccbe000090c0000000000000803f00000000fff114ff0000403f0000a0be00004841cdccccbe000090c0000000000000803f00000000fff114ff0000503f0000a0be00003841cdccccbe0000b0c0000000000000803f00000000fff114ff0000403f0000c0be00004841cdccccbe0000b0c0000000000000803f00000000fff114ff0000503f0000c0be000038410000003f0000b0c0000000000000803f00000000ffffffff0000403f0000c0be000048410000003f0000b0c0000000000000803f00000000ffffffff0000503f0000c0be000038410000003f0000d0c0000000000000803f00000000ffffffff0000403f0000e0be000048410000003f0000d0c0000000000000803f00000000ffffffff0000503f0000e0be000048410000003f0000b0c000000000000000000000803fffffffff000050bf00000080000038410000003f0000b0c000000000000000000000803fffffffff000040bf0000008000004841cdccccbe0000b0c000000000000000000000803fffffffff000050bf000080bd00003841cdccccbe0000b0c000000000000000000000803fffffffff000040bf000080bd000038410000003f0000b0c0000080bf0000000000000000ffffffff000030bf00000080000038410000003f0000d0c0000080bf0000000000000000ffffffff000020bf0000008000003841cdccccbe0000b0c0000080bf0000000000000000ffffffff000030bf000080bd00003841cdccccbe0000d0c0000080bf0000000000000000ffffffff000020bf000080bd000038410000003f0000d0c0000000000000803f00000000ffffffff0000403f0000e0be000048410000003f0000d0c0000000000000803f00000000ffffffff0000503f0000e0be000038410000003f0000f0c0000000000000803f00000000ffffffff0000403f000000bf000048410000003f0000f0c0000000000000803f00000000ffffffff0000503f000000bf000038410000003f0000d0c0000080bf0000000000000000ffffffff000020bf00000080000038410000003f0000f0c0000080bf0000000000000000ffffffff000010bf0000008000003841cdccccbe0000d0c0000080bf0000000000000000ffffffff000020bf000080bd00003841cdccccbe0000f0c0000080bf0000000000000000ffffffff000010bf000080bd000038410000003f0000f0c0000000000000803f0000000037904cff0000403f000000bf000048410000003f0000f0c0000000000000803f0000000037904cff0000503f000000bf000038410000003f000008c1000000000000803f0000000037904cff0000403f000010bf000048410000003f000008c1000000000000803f0000000037904cff0000503f000010bf000038410000003f000008c10000000000000000000080bf37904cff0000a0be00000080000048410000003f000008c10000000000000000000080bf37904cff000080be0000008000003841cdccccbe000008c10000000000000000000080bf37904cff0000a0be000080bd00004841cdccccbe000008c10000000000000000000080bf37904cff000080be000080bd000038410000003f0000f0c0000080bf000000000000000037904cff000010bf00000080000038410000003f000008c1000080bf000000000000000037904cff000000bf0000008000003841cdccccbe0000f0c0000080bf000000000000000037904cff000010bf000080bd00003841cdccccbe000008c1000080bf000000000000000037904cff000000bf000080bd00003841cdccccbe000008c1000000000000803f0000000097ab2cff0000403f000010bf00004841cdccccbe000008c1000000000000803f0000000097ab2cff0000503f000010bf00003841cdccccbe000018c1000000000000803f0000000097ab2cff0000403f000020bf00004841cdccccbe000018c1000000000000803f0000000097ab2cff0000503f000020bf00003841cdccccbe000018c1000000000000803f0000000097ab2cff0000403f000020bf00004841cdccccbe000018c1000000000000803f0000000097ab2cff0000503f000020bf00003841cdccccbe000028c1000000000000803f0000000097ab2cff0000403f000030bf00004841cdccccbe000028c1000000000000803f0000000097ab2cff0000503f000030bf00003841cdccccbe000028c1000000000000803f0000000097ab2cff0000403f000030bf00004841cdccccbe000028c1000000000000803f0000000097ab2cff0000503f000030bf00003841cdccccbe000038c1000000000000803f0000000097ab2cff0000403f000040bf00004841cdccccbe000038c1000000000000803f0000000097ab2cff0000503f000040bf00003841cdccccbe000038c1000000000000803f0000000097ab2cff0000403f000040bf00004841cdccccbe000038c1000000000000803f0000000097ab2cff0000503f000040bf00003841cdccccbe000048c1000000000000803f0000000097ab2cff0000403f000050bf00004841cdccccbe000048c1000000000000803f0000000097ab2cff0000503f000050bf000038410000003f000048c1000000000000803f00000000ffffffff0000403f000050bf000048410000003f000048c1000000000000803f00000000ffffffff0000503f000050bf000038410000003f000058c1000000000000803f00000000ffffffff0000403f000060bf000048410000003f000058c1000000000000803f00000000ffffffff0000503f000060bf000048410000003f000048c100000000000000000000803fffffffff000050bf00000080000038410000003f000048c100000000000000000000803fffffffff000040bf0000008000004841cdccccbe000048c100000000000000000000803fffffffff000050bf000080bd00003841cdccccbe000048c100000000000000000000803fffffffff000040bf000080bd000038410000003f000058c1000000000000803f00000000ffffffff0000403f000060bf000048410000003f000058c1000000000000803f00000000ffffffff0000503f000060bf000038410000003f000068c1000000000000803f00000000ffffffff0000403f000070bf000048410000003f000068c1000000000000803f00000000ffffffff0000503f000070bf000038410000003f000068c1000000000000803f00000000ffffffff0000403f000070bf000048410000003f000068c1000000000000803f00000000ffffffff0000503f000070bf000038410000003f000078c1000000000000803f00000000ffffffff0000403f000080bf000048410000003f000078c1000000000000803f00000000ffffffff0000503f000080bf000038410000003f000078c10000000000000000000080bfffffffff0000a0be00000080000048410000003f000078c10000000000000000000080bfffffffff000080be0000008000003841000000bf000078c10000000000000000000080bfffffffff0000a0be000080bd00004841000000bf000078c10000000000000000000080bfffffffff000080be000080bd000048410000003f0000003f000000000000803f00000000ffffffff0000503f00000080000058410000003f0000003f000000000000803f00000000ffffffff0000603f00000080000048410000003f000000bf000000000000803f00000000ffffffff0000503f000080bd000058410000003f000000bf000000000000803f00000000ffffffff0000603f000080bd000058410000003f0000003f00000000000000000000803fffffffff000060bf00000080000048410000003f0000003f00000000000000000000803fffffffff000050bf0000008000005841000000bf0000003f00000000000000000000803fffffffff000060bf000080bd00004841000000bf0000003f00000000000000000000803fffffffff000050bf000080bd000048410000003f000000bf000000000000803f00000000ffffffff0000503f000080bd000058410000003f000000bf000000000000803f00000000ffffffff0000603f000080bd000048410000003f0000c0bf000000000000803f00000000ffffffff0000503f000000be000058410000003f0000c0bf000000000000803f00000000ffffffff0000603f000000be000048410000003f0000c0bf000000000000803f00000000ffffffff0000503f000000be000058410000003f0000c0bf000000000000803f00000000ffffffff0000603f000000be000048410000003f000020c0000000000000803f00000000ffffffff0000503f000040be000058410000003f000020c0000000000000803f00000000ffffffff0000603f000040be000048410000003f000020c0000000000000803f00000000ffffffff0000503f000040be000058410000003f000020c0000000000000803f00000000ffffffff0000603f000040be000048410000003f000060c0000000000000803f00000000ffffffff0000503f000080be000058410000003f000060c0000000000000803f00000000ffffffff0000603f000080be000048410000003f000020c0000080bf0000000000000000ffffffff000060bf00000080000048410000003f000060c0000080bf0000000000000000ffffffff000050bf0000008000004841cdccccbe000020c0000080bf0000000000000000ffffffff000060bf000080bd00004841cdccccbe000060c0000080bf0000000000000000ffffffff000050bf000080bd000048410000003f000060c0000000000000803f00000000ffffffff0000503f000080be000058410000003f000060c0000000000000803f00000000ffffffff0000603f000080be000048410000003f000090c0000000000000803f00000000ffffffff0000503f0000a0be000058410000003f000090c0000000000000803f00000000ffffffff0000603f0000a0be000048410000003f000060c0000080bf0000000000000000ffffffff000050bf00000080000048410000003f000090c0000080bf0000000000000000ffffffff000040bf0000008000004841cdccccbe000060c0000080bf0000000000000000ffffffff000050bf000080bd00004841cdccccbe000090c0000080bf0000000000000000ffffffff000040bf000080bd000048410000003f000090c0000000000000803f00000000ffffffff0000503f0000a0be000058410000003f000090c0000000000000803f00000000ffffffff0000603f0000a0be000048410000003f0000b0c0000000000000803f00000000ffffffff0000503f0000c0be000058410000003f0000b0c0000000000000803f00000000ffffffff0000603f0000c0be000048410000003f000090c0000080bf0000000000000000ffffffff000040bf00000080000048410000003f0000b0c0000080bf0000000000000000ffffffff000030bf0000008000004841cdccccbe000090c0000080bf0000000000000000ffffffff000040bf000080bd00004841cdccccbe0000b0c0000080bf0000000000000000ffffffff000030bf000080bd000048410000003f0000b0c0000000000000803f00000000ffffffff0000503f0000c0be000058410000003f0000b0c0000000000000803f00000000ffffffff0000603f0000c0be000048410000003f0000d0c0000000000000803f00000000ffffffff0000503f0000e0be000058410000003f0000d0c0000000000000803f00000000ffffffff0000603f0000e0be000048410000003f0000d0c0000000000000803f00000000ffffffff0000503f0000e0be000058410000003f0000d0c0000000000000803f00000000ffffffff0000603f0000e0be000048410000003f0000f0c0000000000000803f00000000ffffffff0000503f000000bf000058410000003f0000f0c0000000000000803f00000000ffffffff0000603f000000bf000048410000003f0000f0c0000000000000803f00000000ffffffff0000503f000000bf000058410000003f0000f0c0000000000000803f00000000ffffffff0000603f000000bf000048410000003f000008c1000000000000803f00000000ffffffff0000503f000010bf000058410000003f000008c1000000000000803f00000000ffffffff0000603f000010bf000048410000003f000008c1000000000000803f00000000ffffffff0000503f000010bf000058410000003f000008c1000000000000803f00000000ffffffff0000603f000010bf000048410000003f000018c1000000000000803f00000000ffffffff0000503f000020bf000058410000003f000018c1000000000000803f00000000ffffffff0000603f000020bf000048410000003f000008c1000080bf0000000000000000ffffffff000000bf00000080000048410000003f000018c1000080bf0000000000000000ffffffff0000e0be0000008000004841cdccccbe000008c1000080bf0000000000000000ffffffff000000bf000080bd00004841cdccccbe000018c1000080bf0000000000000000ffffffff0000e0be000080bd000048410000003f000018c1000000000000803f00000000ffffffff0000503f000020bf000058410000003f000018c1000000000000803f00000000ffffffff0000603f000020bf000048410000003f000028c1000000000000803f00000000ffffffff0000503f000030bf000058410000003f000028c1000000000000803f00000000ffffffff0000603f000030bf000048410000003f000018c1000080bf0000000000000000ffffffff0000e0be00000080000048410000003f000028c1000080bf0000000000000000ffffffff0000c0be0000008000004841cdccccbe000018c1000080bf0000000000000000ffffffff0000e0be000080bd00004841cdccccbe000028c1000080bf0000000000000000ffffffff0000c0be000080bd000048410000003f000028c1000000000000803f00000000ffffffff0000503f000030bf000058410000003f000028c1000000000000803f00000000ffffffff0000603f000030bf000048410000003f000038c1000000000000803f00000000ffffffff0000503f000040bf000058410000003f000038c1000000000000803f00000000ffffffff0000603f000040bf000048410000003f000028c1000080bf0000000000000000ffffffff0000c0be00000080000048410000003f000038c1000080bf0000000000000000ffffffff0000a0be0000008000004841cdccccbe000028c1000080bf0000000000000000ffffffff0000c0be000080bd00004841cdccccbe000038c1000080bf0000000000000000ffffffff0000a0be000080bd000048410000003f000038c1000000000000803f00000000ffffffff0000503f000040bf000058410000003f000038c1000000000000803f00000000ffffffff0000603f000040bf000048410000003f000048c1000000000000803f00000000ffffffff0000503f000050bf000058410000003f000048c1000000000000803f00000000ffffffff0000603f000050bf000048410000003f000038c1000080bf0000000000000000ffffffff0000a0be00000080000048410000003f000048c1000080bf0000000000000000ffffffff000080be0000008000004841cdccccbe000038c1000080bf0000000000000000ffffffff0000a0be000080bd00004841cdccccbe000048c1000080bf0000000000000000ffffffff000080be000080bd000048410000003f000048c1000000000000803f00000000ffffffff0000503f000050bf000058410000003f000048c1000000000000803f00000000ffffffff0000603f000050bf000048410000003f000058c1000000000000803f00000000ffffffff0000503f000060bf000058410000003f000058c1000000000000803f00000000ffffffff0000603f000060bf000048410000003f000058c1000000000000803f00000000ffffffff0000503f000060bf000058410000003f000058c1000000000000803f00000000ffffffff0000603f000060bf000048410000003f000068c1000000000000803f00000000ffffffff0000503f000070bf000058410000003f000068c1000000000000803f00000000ffffffff0000603f000070bf000048410000003f000068c1000000000000803f00000000ffffffff0000503f000070bf000058410000003f000068c1000000000000803f00000000ffffffff0000603f000070bf000048410000003f000078c1000000000000803f00000000ffffffff0000503f000080bf000058410000003f000078c1000000000000803f00000000ffffffff0000603f000080bf000048410000003f000078c10000000000000000000080bfffffffff000080be00000080000058410000003f000078c10000000000000000000080bfffffffff000040be0000008000004841000000bf000078c10000000000000000000080bfffffffff000080be000080bd00005841000000bf000078c10000000000000000000080bfffffffff000040be000080bd000058410000003f0000003f000000000000803f00000000ffffffff0000603f00000080000068410000003f0000003f000000000000803f00000000ffffffff0000703f00000080000058410000003f000000bf000000000000803f00000000ffffffff0000603f000080bd000068410000003f000000bf000000000000803f00000000ffffffff0000703f000080bd000068410000003f0000003f00000000000000000000803fffffffff000070bf00000080000058410000003f0000003f00000000000000000000803fffffffff000060bf0000008000006841000000bf0000003f00000000000000000000803fffffffff000070bf000080bd00005841000000bf0000003f00000000000000000000803fffffffff000060bf000080bd000058410000003f000000bf000000000000803f00000000ffffffff0000603f000080bd000068410000003f000000bf000000000000803f00000000ffffffff0000703f000080bd000058410000003f0000c0bf000000000000803f00000000ffffffff0000603f000000be000068410000003f0000c0bf000000000000803f00000000ffffffff0000703f000000be000058410000003f0000c0bf000000000000803f00000000ffffffff0000603f000000be000068410000003f0000c0bf000000000000803f00000000ffffffff0000703f000000be000058410000003f000020c0000000000000803f00000000ffffffff0000603f000040be000068410000003f000020c0000000000000803f00000000ffffffff0000703f000040be000058410000003f000020c0000000000000803f00000000ffffffff0000603f000040be000068410000003f000020c0000000000000803f00000000ffffffff0000703f000040be000058410000003f000060c0000000000000803f00000000ffffffff0000603f000080be000068410000003f000060c0000000000000803f00000000ffffffff0000703f000080be000058410000003f000060c0000000000000803f00000000ffffffff0000603f000080be000068410000003f000060c0000000000000803f00000000ffffffff0000703f000080be000058410000003f000090c0000000000000803f00000000ffffffff0000603f0000a0be000068410000003f000090c0000000000000803f00000000ffffffff0000703f0000a0be000058410000003f000090c0000000000000803f00000000ffffffff0000603f0000a0be000068410000003f000090c0000000000000803f00000000ffffffff0000703f0000a0be000058410000003f0000b0c0000000000000803f00000000ffffffff0000603f0000c0be000068410000003f0000b0c0000000000000803f00000000ffffffff0000703f0000c0be000058410000003f0000b0c0000000000000803f00000000ffffffff0000603f0000c0be000068410000003f0000b0c0000000000000803f00000000ffffffff0000703f0000c0be000058410000003f0000d0c0000000000000803f00000000ffffffff0000603f0000e0be000068410000003f0000d0c0000000000000803f00000000ffffffff0000703f0000e0be000058410000003f0000d0c0000000000000803f00000000ffffffff0000603f0000e0be000068410000003f0000d0c0000000000000803f00000000ffffffff0000703f0000e0be000058410000003f0000f0c0000000000000803f00000000ffffffff0000603f000000bf000068410000003f0000f0c0000000000000803f00000000ffffffff0000703f000000bf000058410000003f0000f0c0000000000000803f00000000ffffffff0000603f000000bf000068410000003f0000f0c0000000000000803f00000000ffffffff0000703f000000bf000058410000003f000008c1000000000000803f00000000ffffffff0000603f000010bf000068410000003f000008c1000000000000803f00000000ffffffff0000703f000010bf000058410000003f000008c1000000000000803f00000000ffffffff0000603f000010bf000068410000003f000008c1000000000000803f00000000ffffffff0000703f000010bf000058410000003f000018c1000000000000803f00000000ffffffff0000603f000020bf000068410000003f000018c1000000000000803f00000000ffffffff0000703f000020bf000058410000003f000018c1000000000000803f00000000ffffffff0000603f000020bf000068410000003f000018c1000000000000803f00000000ffffffff0000703f000020bf000058410000003f000028c1000000000000803f00000000ffffffff0000603f000030bf000068410000003f000028c1000000000000803f00000000ffffffff0000703f000030bf000058410000003f000028c1000000000000803f00000000ffffffff0000603f000030bf000068410000003f000028c1000000000000803f00000000ffffffff0000703f000030bf000058410000003f000038c1000000000000803f00000000ffffffff0000603f000040bf000068410000003f000038c1000000000000803f00000000ffffffff0000703f000040bf000058410000003f000038c1000000000000803f00000000ffffffff0000603f000040bf000068410000003f000038c1000000000000803f00000000ffffffff0000703f000040bf000058410000003f000048c1000000000000803f00000000ffffffff0000603f000050bf000068410000003f000048c1000000000000803f00000000ffffffff0000703f000050bf000058410000003f000048c1000000000000803f00000000ffffffff0000603f000050bf000068410000003f000048c1000000000000803f00000000ffffffff0000703f000050bf000058410000003f000058c1000000000000803f00000000ffffffff0000603f000060bf000068410000003f000058c1000000000000803f00000000ffffffff0000703f000060bf000058410000003f000058c1000000000000803f00000000ffffffff0000603f000060bf000068410000003f000058c1000000000000803f00000000ffffffff0000703f000060bf000058410000003f000068c1000000000000803f00000000ffffffff0000603f000070bf000068410000003f000068c1000000000000803f00000000ffffffff0000703f000070bf000058410000003f000068c1000000000000803f00000000ffffffff0000603f000070bf000068410000003f000068c1000000000000803f00000000ffffffff0000703f000070bf000058410000003f000078c1000000000000803f00000000ffffffff0000603f000080bf000068410000003f000078c1000000000000803f00000000ffffffff0000703f000080bf000058410000003f000078c10000000000000000000080bfffffffff000040be00000080000068410000003f000078c10000000000000000000080bfffffffff000000be0000008000005841000000bf000078c10000000000000000000080bfffffffff000040be000080bd00006841000000bf000078c10000000000000000000080bfffffffff000000be000080bd000068410000003f0000003f000000000000803f00000000ffffffff0000703f00000080000078410000003f0000003f000000000000803f00000000ffffffff0000803f00000080000068410000003f000000bf000000000000803f00000000ffffffff0000703f000080bd000078410000003f000000bf000000000000803f00000000ffffffff0000803f000080bd000078410000003f0000003f00000000000000000000803fffffffff000080bf00000080000068410000003f0000003f00000000000000000000803fffffffff000070bf0000008000007841000000bf0000003f00000000000000000000803fffffffff000080bf000080bd00006841000000bf0000003f00000000000000000000803fffffffff000070bf000080bd000078410000003f000000bf0000803f0000000000000000ffffffff000080bd00000080000078410000003f0000003f0000803f0000000000000000ffffffff000000800000008000007841000000bf000000bf0000803f0000000000000000ffffffff000080bd000080bd00007841000000bf0000003f0000803f0000000000000000ffffffff00000080000080bd000068410000003f000000bf000000000000803f00000000ffffffff0000703f000080bd000078410000003f000000bf000000000000803f00000000ffffffff0000803f000080bd000068410000003f0000c0bf000000000000803f00000000ffffffff0000703f000000be000078410000003f0000c0bf000000000000803f00000000ffffffff0000803f000000be000078410000003f0000c0bf0000803f0000000000000000ffffffff000000be00000080000078410000003f000000bf0000803f0000000000000000ffffffff000080bd0000008000007841000000bf0000c0bf0000803f0000000000000000ffffffff000000be000080bd00007841000000bf000000bf0000803f0000000000000000ffffffff000080bd000080bd000068410000003f0000c0bf000000000000803f00000000ffffffff0000703f000000be000078410000003f0000c0bf000000000000803f00000000ffffffff0000803f000000be000068410000003f000020c0000000000000803f00000000ffffffff0000703f000040be000078410000003f000020c0000000000000803f00000000ffffffff0000803f000040be000078410000003f000020c00000803f0000000000000000ffffffff000040be00000080000078410000003f0000c0bf0000803f0000000000000000ffffffff000000be0000008000007841000000bf000020c00000803f0000000000000000ffffffff000040be000080bd00007841000000bf0000c0bf0000803f0000000000000000ffffffff000000be000080bd000068410000003f000020c0000000000000803f00000000ffffffff0000703f000040be000078410000003f000020c0000000000000803f00000000ffffffff0000803f000040be000068410000003f000060c0000000000000803f00000000ffffffff0000703f000080be000078410000003f000060c0000000000000803f00000000ffffffff0000803f000080be000078410000003f000060c00000803f0000000000000000ffffffff000080be00000080000078410000003f000020c00000803f0000000000000000ffffffff000040be0000008000007841000000bf000060c00000803f0000000000000000ffffffff000080be000080bd00007841000000bf000020c00000803f0000000000000000ffffffff000040be000080bd000068410000003f000060c0000000000000803f00000000ffffffff0000703f000080be000078410000003f000060c0000000000000803f00000000ffffffff0000803f000080be000068410000003f000090c0000000000000803f00000000ffffffff0000703f0000a0be000078410000003f000090c0000000000000803f00000000ffffffff0000803f0000a0be000078410000003f000090c00000803f0000000000000000ffffffff0000a0be00000080000078410000003f000060c00000803f0000000000000000ffffffff000080be0000008000007841000000bf000090c00000803f0000000000000000ffffffff0000a0be000080bd00007841000000bf000060c00000803f0000000000000000ffffffff000080be000080bd000068410000003f000090c0000000000000803f00000000ffffffff0000703f0000a0be000078410000003f000090c0000000000000803f00000000ffffffff0000803f0000a0be000068410000003f0000b0c0000000000000803f00000000ffffffff0000703f0000c0be000078410000003f0000b0c0000000000000803f00000000ffffffff0000803f0000c0be000078410000003f0000b0c00000803f0000000000000000ffffffff0000c0be00000080000078410000003f000090c00000803f0000000000000000ffffffff0000a0be0000008000007841000000bf0000b0c00000803f0000000000000000ffffffff0000c0be000080bd00007841000000bf000090c00000803f0000000000000000ffffffff0000a0be000080bd000068410000003f0000b0c0000000000000803f00000000ffffffff0000703f0000c0be000078410000003f0000b0c0000000000000803f00000000ffffffff0000803f0000c0be000068410000003f0000d0c0000000000000803f00000000ffffffff0000703f0000e0be000078410000003f0000d0c0000000000000803f00000000ffffffff0000803f0000e0be000078410000003f0000d0c00000803f0000000000000000ffffffff0000e0be00000080000078410000003f0000b0c00000803f0000000000000000ffffffff0000c0be0000008000007841000000bf0000d0c00000803f0000000000000000ffffffff0000e0be000080bd00007841000000bf0000b0c00000803f0000000000000000ffffffff0000c0be000080bd000068410000003f0000d0c0000000000000803f00000000ffffffff0000703f0000e0be000078410000003f0000d0c0000000000000803f00000000ffffffff0000803f0000e0be000068410000003f0000f0c0000000000000803f00000000ffffffff0000703f000000bf000078410000003f0000f0c0000000000000803f00000000ffffffff0000803f000000bf000078410000003f0000f0c00000803f0000000000000000ffffffff000000bf00000080000078410000003f0000d0c00000803f0000000000000000ffffffff0000e0be0000008000007841000000bf0000f0c00000803f0000000000000000ffffffff000000bf000080bd00007841000000bf0000d0c00000803f0000000000000000ffffffff0000e0be000080bd000068410000003f0000f0c0000000000000803f00000000ffffffff0000703f000000bf000078410000003f0000f0c0000000000000803f00000000ffffffff0000803f000000bf000068410000003f000008c1000000000000803f00000000ffffffff0000703f000010bf000078410000003f000008c1000000000000803f00000000ffffffff0000803f000010bf000078410000003f000008c10000803f0000000000000000ffffffff000010bf00000080000078410000003f0000f0c00000803f0000000000000000ffffffff000000bf0000008000007841000000bf000008c10000803f0000000000000000ffffffff000010bf000080bd00007841000000bf0000f0c00000803f0000000000000000ffffffff000000bf000080bd000068410000003f000008c1000000000000803f00000000ffffffff0000703f000010bf000078410000003f000008c1000000000000803f00000000ffffffff0000803f000010bf000068410000003f000018c1000000000000803f00000000ffffffff0000703f000020bf000078410000003f000018c1000000000000803f00000000ffffffff0000803f000020bf000078410000003f000018c10000803f0000000000000000ffffffff000020bf00000080000078410000003f000008c10000803f0000000000000000ffffffff000010bf0000008000007841000000bf000018c10000803f0000000000000000ffffffff000020bf000080bd00007841000000bf000008c10000803f0000000000000000ffffffff000010bf000080bd000068410000003f000018c1000000000000803f00000000ffffffff0000703f000020bf000078410000003f000018c1000000000000803f00000000ffffffff0000803f000020bf000068410000003f000028c1000000000000803f00000000ffffffff0000703f000030bf000078410000003f000028c1000000000000803f00000000ffffffff0000803f000030bf000078410000003f000028c10000803f0000000000000000ffffffff000030bf00000080000078410000003f000018c10000803f0000000000000000ffffffff000020bf0000008000007841000000bf000028c10000803f0000000000000000ffffffff000030bf000080bd00007841000000bf000018c10000803f0000000000000000ffffffff000020bf000080bd000068410000003f000028c1000000000000803f00000000ffffffff0000703f000030bf000078410000003f000028c1000000000000803f00000000ffffffff0000803f000030bf000068410000003f000038c1000000000000803f00000000ffffffff0000703f000040bf000078410000003f000038c1000000000000803f00000000ffffffff0000803f000040bf000078410000003f000038c10000803f0000000000000000ffffffff000040bf00000080000078410000003f000028c10000803f0000000000000000ffffffff000030bf0000008000007841000000bf000038c10000803f0000000000000000ffffffff000040bf000080bd00007841000000bf000028c10000803f0000000000000000ffffffff000030bf000080bd000068410000003f000038c1000000000000803f00000000ffffffff0000703f000040bf000078410000003f000038c1000000000000803f00000000ffffffff0000803f000040bf000068410000003f000048c1000000000000803f00000000ffffffff0000703f000050bf000078410000003f000048c1000000000000803f00000000ffffffff0000803f000050bf000078410000003f000048c10000803f0000000000000000ffffffff000050bf00000080000078410000003f000038c10000803f0000000000000000ffffffff000040bf0000008000007841000000bf000048c10000803f0000000000000000ffffffff000050bf000080bd00007841000000bf000038c10000803f0000000000000000ffffffff000040bf000080bd000068410000003f000048c1000000000000803f00000000ffffffff0000703f000050bf000078410000003f000048c1000000000000803f00000000ffffffff0000803f000050bf000068410000003f000058c1000000000000803f00000000ffffffff0000703f000060bf000078410000003f000058c1000000000000803f00000000ffffffff0000803f000060bf000078410000003f000058c10000803f0000000000000000ffffffff000060bf00000080000078410000003f000048c10000803f0000000000000000ffffffff000050bf0000008000007841000000bf000058c10000803f0000000000000000ffffffff000060bf000080bd00007841000000bf000048c10000803f0000000000000000ffffffff000050bf000080bd000068410000003f000058c1000000000000803f00000000ffffffff0000703f000060bf000078410000003f000058c1000000000000803f00000000ffffffff0000803f000060bf000068410000003f000068c1000000000000803f00000000ffffffff0000703f000070bf000078410000003f000068c1000000000000803f00000000ffffffff0000803f000070bf000078410000003f000068c10000803f0000000000000000ffffffff000070bf00000080000078410000003f000058c10000803f0000000000000000ffffffff000060bf0000008000007841000000bf000068c10000803f0000000000000000ffffffff000070bf000080bd00007841000000bf000058c10000803f0000000000000000ffffffff000060bf000080bd000068410000003f000068c1000000000000803f00000000ffffffff0000703f000070bf000078410000003f000068c1000000000000803f00000000ffffffff0000803f000070bf000068410000003f000078c1000000000000803f00000000ffffffff0000703f000080bf000078410000003f000078c1000000000000803f00000000ffffffff0000803f000080bf000068410000003f000078c10000000000000000000080bfffffffff000000be00000080000078410000003f000078c10000000000000000000080bfffffffff000080bd0000008000006841000000bf000078c10000000000000000000080bfffffffff000000be000080bd00007841000000bf000078c10000000000000000000080bfffffffff000080bd000080bd000078410000003f000078c10000803f0000000000000000ffffffff000080bf00000080000078410000003f000068c10000803f0000000000000000ffffffff000070bf0000008000007841000000bf000078c10000803f0000000000000000ffffffff000080bf000080bd00007841000000bf000068c10000803f0000000000000000ffffffff000070bf000080bd - m_CompressedMesh: - m_Vertices: - m_NumItems: 0 - m_Range: 0 - m_Start: 0 - m_Data: - m_BitSize: 0 - m_UV: - m_NumItems: 0 - m_Range: 0 - m_Start: 0 - m_Data: - m_BitSize: 0 - m_BindPoses: - m_NumItems: 0 - m_Range: 0 - m_Start: 0 - m_Data: - m_BitSize: 0 - m_Normals: - m_NumItems: 0 - m_Range: 0 - m_Start: 0 - m_Data: - m_BitSize: 0 - m_Tangents: - m_NumItems: 0 - m_Range: 0 - m_Start: 0 - m_Data: - m_BitSize: 0 - m_Weights: - m_NumItems: 0 - m_Data: - m_BitSize: 0 - m_NormalSigns: - m_NumItems: 0 - m_Data: - m_BitSize: 0 - m_TangentSigns: - m_NumItems: 0 - m_Data: - m_BitSize: 0 - m_BoneIndices: - m_NumItems: 0 - m_Data: - m_BitSize: 0 - m_Triangles: - m_NumItems: 0 - m_Data: - m_BitSize: 0 - m_Colors: - m_NumItems: 0 - m_Data: - m_BitSize: 0 - m_LocalAABB: - m_Center: {x: 7.5, y: 0, z: -7.5} - m_Extent: {x: 8, y: .5, z: 8} - m_MeshUsageFlags: 0 - m_MeshOptimized: 0 ---- !u!1 &420635569 -GameObject: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - serializedVersion: 4 - m_Component: - - 4: {fileID: 420635570} - m_Layer: 0 - m_Name: Column - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &420635570 -Transform: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 420635569} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: -16, y: 0, z: -16} - m_LocalScale: {x: 1, y: 1, z: 1} - m_Children: - - {fileID: 2141415061} - m_Father: {fileID: 861361728} ---- !u!1 &692705302 -GameObject: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - serializedVersion: 4 - m_Component: - - 4: {fileID: 692705304} - - 108: {fileID: 692705303} - m_Layer: 0 - m_Name: Directional light - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!108 &692705303 -Light: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 692705302} - m_Enabled: 1 - serializedVersion: 3 - m_Type: 1 - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_Intensity: .5 - m_Range: 10 - m_SpotAngle: 30 - m_CookieSize: 10 - m_Shadows: - m_Type: 1 - m_Resolution: -1 - m_Strength: 1 - m_Bias: .0500000007 - m_Softness: 4 - m_SoftnessFade: 1 - m_Cookie: {fileID: 0} - m_DrawHalo: 0 - m_ActuallyLightmapped: 0 - m_Flare: {fileID: 0} - m_RenderMode: 0 - m_CullingMask: - serializedVersion: 2 - m_Bits: 4294967295 - m_Lightmapping: 1 - m_ShadowSamples: 1 - m_ShadowRadius: 0 - m_ShadowAngle: 0 - m_IndirectIntensity: 1 - m_AreaSize: {x: 1, y: 1} ---- !u!4 &692705304 -Transform: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 692705302} - m_LocalRotation: {x: .408217937, y: -.234569728, z: .109381661, w: .875426114} - m_LocalPosition: {x: -2.00056601, y: 1.30904579, z: 6.58499813} - m_LocalScale: {x: 1, y: 1, z: 1} - m_Children: [] - m_Father: {fileID: 0} ---- !u!1 &861361727 -GameObject: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - serializedVersion: 4 - m_Component: - - 4: {fileID: 861361728} - m_Layer: 0 - m_Name: GameObject - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &861361728 -Transform: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 861361727} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 16, y: -.5, z: 17.5} - m_LocalScale: {x: 1, y: 1, z: 1} - m_Children: - - {fileID: 420635570} - m_Father: {fileID: 0} ---- !u!1 &1293186818 -GameObject: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - serializedVersion: 4 - m_Component: - - 4: {fileID: 1293186819} - m_Layer: 0 - m_Name: ViewportCenter - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &1293186819 -Transform: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1293186818} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: .5, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_Children: - - {fileID: 1336453711} - m_Father: {fileID: 0} ---- !u!1 &1336453706 -GameObject: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - serializedVersion: 4 - m_Component: - - 4: {fileID: 1336453711} - - 20: {fileID: 1336453710} - - 92: {fileID: 1336453709} - - 124: {fileID: 1336453708} - - 81: {fileID: 1336453707} - - 114: {fileID: 1336453713} - - 114: {fileID: 1336453712} - m_Layer: 0 - m_Name: Main Camera - m_TagString: MainCamera - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!81 &1336453707 -AudioListener: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1336453706} - m_Enabled: 1 ---- !u!124 &1336453708 -Behaviour: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1336453706} - m_Enabled: 1 ---- !u!92 &1336453709 -Behaviour: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1336453706} - m_Enabled: 1 ---- !u!20 &1336453710 -Camera: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1336453706} - m_Enabled: 1 - serializedVersion: 2 - m_ClearFlags: 1 - m_BackGroundColor: {r: .192156866, g: .301960796, b: .474509805, a: .0196078438} - m_NormalizedViewPortRect: - serializedVersion: 2 - x: 0 - y: 0 - width: 1 - height: 1 - near clip plane: 20 - far clip plane: 30 - field of view: 50 - orthographic: 0 - orthographic size: 100 - m_Depth: -1 - m_CullingMask: - serializedVersion: 2 - m_Bits: 4294967295 - m_RenderingPath: 1 - m_TargetTexture: {fileID: 0} - m_HDR: 0 ---- !u!4 &1336453711 -Transform: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1336453706} - m_LocalRotation: {x: .707106829, y: 0, z: 0, w: .707106829} - m_LocalPosition: {x: 0, y: 20, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_Children: [] - m_Father: {fileID: 1293186819} ---- !u!114 &1336453712 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1336453706} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 2fb12edbd5d56cb4c99ccf773df52492, type: 3} - m_Name: - m_EditorClassIdentifier: - startRect: - serializedVersion: 2 - x: 10 - y: 10 - width: 75 - height: 50 - updateColor: 1 - allowDrag: 1 - frequency: .5 - nbDecimal: 1 ---- !u!114 &1336453713 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1336453706} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: b54fa8be8a38a9f4e8f53b4399135e30, type: 3} - m_Name: - m_EditorClassIdentifier: - viewPortWidth: 80 - viewPortHeight: 25 - verticalShift: 0 - viewDistance: 10 ---- !u!1 &2141415060 -GameObject: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - serializedVersion: 4 - m_Component: - - 4: {fileID: 2141415061} - - 33: {fileID: 2141415062} - - 23: {fileID: 2141415063} - - 114: {fileID: 2141415064} - m_Layer: 0 - m_Name: TestBlock - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &2141415061 -Transform: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 2141415060} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: -8, y: 0, z: 8} - m_LocalScale: {x: 1, y: 1, z: 1} - m_Children: [] - m_Father: {fileID: 420635570} ---- !u!33 &2141415062 -MeshFilter: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 2141415060} - m_Mesh: {fileID: 42309399} ---- !u!23 &2141415063 -Renderer: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 2141415060} - m_Enabled: 1 - m_CastShadows: 1 - m_ReceiveShadows: 1 - m_LightmapIndex: 255 - m_LightmapTilingOffset: {x: 1, y: 1, z: 0, w: 0} - m_Materials: - - {fileID: 2100000, guid: fcc33854b846d0e4aa14f8afb74e173b, type: 2} - m_SubsetIndices: - m_StaticBatchRoot: {fileID: 0} - m_UseLightProbes: 0 - m_LightProbeAnchor: {fileID: 0} - m_ScaleInLightmap: 1 ---- !u!114 &2141415064 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 2141415060} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 8d11b6dacbf85e24ead2e95cafce40fd, type: 3} - m_Name: - m_EditorClassIdentifier: - terrain: 03000000030000000300000003000000030000000300000003000000030000000400000003000000030000000300000003000000030000000300000003000000030000000300000003000000030000000300000003000000030000000300000004000000030000000300000003000000030000000300000003000000030000000300000003000000030000000300000003000000030000000300000003000000040000000300000003000000030000000300000003000000030000000300000003000000030000000300000003000000040000000400000003000000030000000400000003000000030000000400000004000000030000000300000003000000030000000300000003000000030000000400000004000000030000000300000004000000030000000300000004000000040000000300000003000000030000000300000003000000030000000300000004000000040000000400000004000000040000000400000004000000040000000400000003000000030000000300000003000000030000000300000003000000030000000400000001000000010000000100000001000000010000000400000003000000030000000300000003000000030000000300000003000000030000000300000004000000010000000100000001000000010000000100000004000000030000000300000003000000030000000300000003000000030000000300000003000000010000000100000001000000010000000100000001000000040000000300000003000000030000000300000003000000030000000300000003000000030000000400000004000000040000000400000004000000040000000400000004000000030000000300000003000000030000000300000003000000030000000300000003000000030000000300000003000000030000000300000003000000040000000300000003000000030000000300000003000000030000000300000004000000040000000400000003000000040000000300000004000000040000000400000003000000030000000300000003000000030000000300000003000000040000000400000004000000040000000400000004000000040000000400000004000000030000000300000003000000030000000300000003000000030000000300000003000000030000000300000003000000030000000300000003000000030000000300000003000000030000000300000003000000030000000300000003000000030000000300000003000000030000000300000003000000030000000300000003000000030000000300000003000000030000000300000003000000030000000300000003000000030000000300000003000000030000000300000003000000030000000300000003000000 - colors: - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294251560 - - serializedVersion: 2 - rgba: 4294251560 - - serializedVersion: 2 - rgba: 4283207735 - - serializedVersion: 2 - rgba: 4283207735 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4283207735 - - serializedVersion: 2 - rgba: 4283207735 - - serializedVersion: 2 - rgba: 4294251560 - - serializedVersion: 2 - rgba: 4294251560 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294251560 - - serializedVersion: 2 - rgba: 4294251560 - - serializedVersion: 2 - rgba: 4283207735 - - serializedVersion: 2 - rgba: 4283207735 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4283207735 - - serializedVersion: 2 - rgba: 4283207735 - - serializedVersion: 2 - rgba: 4294251560 - - serializedVersion: 2 - rgba: 4294251560 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4279562751 - - serializedVersion: 2 - rgba: 4279562751 - - serializedVersion: 2 - rgba: 4279562751 - - serializedVersion: 2 - rgba: 4279562751 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4279562751 - - serializedVersion: 2 - rgba: 4279562751 - - serializedVersion: 2 - rgba: 4279562751 - - serializedVersion: 2 - rgba: 4279562751 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4279562751 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4279562751 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4279562751 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4279562751 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4283207735 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4281117591 - - serializedVersion: 2 - rgba: 4283207735 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4283207735 - - serializedVersion: 2 - rgba: 4281668853 - - serializedVersion: 2 - rgba: 4281668853 - - serializedVersion: 2 - rgba: 4281668853 - - serializedVersion: 2 - rgba: 4281668853 - - serializedVersion: 2 - rgba: 4281668853 - - serializedVersion: 2 - rgba: 4281668853 - - serializedVersion: 2 - rgba: 4281668853 - - serializedVersion: 2 - rgba: 4281117591 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4283207735 - - serializedVersion: 2 - rgba: 4283207735 - - serializedVersion: 2 - rgba: 4283207735 - - serializedVersion: 2 - rgba: 4283207735 - - serializedVersion: 2 - rgba: 4283207735 - - serializedVersion: 2 - rgba: 4283207735 - - serializedVersion: 2 - rgba: 4283207735 - - serializedVersion: 2 - rgba: 4283207735 - - serializedVersion: 2 - rgba: 4281117591 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4281117591 - - serializedVersion: 2 - rgba: 4281117591 - - serializedVersion: 2 - rgba: 4281117591 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4281117591 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4281117591 - - serializedVersion: 2 - rgba: 4281117591 - - serializedVersion: 2 - rgba: 4281117591 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4281117591 - - serializedVersion: 2 - rgba: 4281117591 - - serializedVersion: 2 - rgba: 4281117591 - - serializedVersion: 2 - rgba: 4281117591 - - serializedVersion: 2 - rgba: 4281117591 - - serializedVersion: 2 - rgba: 4281117591 - - serializedVersion: 2 - rgba: 4281117591 - - serializedVersion: 2 - rgba: 4281117591 - - serializedVersion: 2 - rgba: 4281117591 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 - - serializedVersion: 2 - rgba: 4294967295 diff --git a/clients/unity/simple_sample/Assets/Start.unity.meta b/clients/unity/simple_sample/Assets/Start.unity.meta deleted file mode 100644 index 560a507ae..000000000 --- a/clients/unity/simple_sample/Assets/Start.unity.meta +++ /dev/null @@ -1,4 +0,0 @@ -fileFormatVersion: 2 -guid: eb0b853da2a60f540a81dc515bab1875 -DefaultImporter: - userData: diff --git a/clients/unity/simple_sample/Assets/TestScript.cs b/clients/unity/simple_sample/Assets/TestScript.cs deleted file mode 100644 index f6568c93d..000000000 --- a/clients/unity/simple_sample/Assets/TestScript.cs +++ /dev/null @@ -1,21 +0,0 @@ -using DFHack; -using System.Collections.Generic; -using UnityEngine; - -public class TestScript : MonoBehaviour { - RemoteClient remoteClient = new RemoteClient(); - // Use this for initialization - void Start () { - if (!remoteClient.connect()) - Debug.LogError("Could not connect"); - else - { - remoteClient.run_command("ls", new List()); - } - } - - // Update is called once per frame - void Update () { - - } -} diff --git a/clients/unity/simple_sample/Assets/TestScript.cs.meta b/clients/unity/simple_sample/Assets/TestScript.cs.meta deleted file mode 100644 index 93c26c3f1..000000000 --- a/clients/unity/simple_sample/Assets/TestScript.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: e85d437f881938247992e492006de2df -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/clients/unity/simple_sample/Assets/UV Test.mat b/clients/unity/simple_sample/Assets/UV Test.mat deleted file mode 100644 index da5f6cde4..000000000 --- a/clients/unity/simple_sample/Assets/UV Test.mat +++ /dev/null @@ -1,78 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!21 &2100000 -Material: - serializedVersion: 3 - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_Name: UV Test - m_Shader: {fileID: 4800000, guid: ff990239cc3bc4a45a362f932463d378, type: 3} - m_ShaderKeywords: [] - m_SavedProperties: - serializedVersion: 2 - m_TexEnvs: - data: - first: - name: _MainTex - second: - m_Texture: {fileID: 2800000, guid: d420514133a0fbd4990025b3e1dac764, type: 3} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - data: - first: - name: _BumpMap - second: - m_Texture: {fileID: 0} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - data: - first: - name: _Detail - second: - m_Texture: {fileID: 2800000, guid: d420514133a0fbd4990025b3e1dac764, type: 3} - m_Scale: {x: 16, y: 16} - m_Offset: {x: 0, y: 0} - data: - first: - name: _DecalTex - second: - m_Texture: {fileID: 0} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - data: - first: - name: _LightMap - second: - m_Texture: {fileID: 0} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - data: - first: - name: _ParallaxMap - second: - m_Texture: {fileID: 0} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - m_Floats: - data: - first: - name: _Shininess - second: .154818445 - data: - first: - name: _Parallax - second: .0199999996 - m_Colors: - data: - first: - name: _Color - second: {r: 1, g: 1, b: 1, a: 1} - data: - first: - name: _SpecColor - second: {r: 0, g: 0, b: 0, a: 1} - data: - first: - name: _Emission - second: {r: 0, g: 0, b: 0, a: 0} diff --git a/clients/unity/simple_sample/Assets/UV Test.mat.meta b/clients/unity/simple_sample/Assets/UV Test.mat.meta deleted file mode 100644 index 2289ffe49..000000000 --- a/clients/unity/simple_sample/Assets/UV Test.mat.meta +++ /dev/null @@ -1,4 +0,0 @@ -fileFormatVersion: 2 -guid: fcc33854b846d0e4aa14f8afb74e173b -NativeFormatImporter: - userData: diff --git a/clients/unity/simple_sample/Assets/UVTest.png b/clients/unity/simple_sample/Assets/UVTest.png deleted file mode 100644 index 2401acdd7cef113f0a0ac97ffd986ecd0f907b0c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 298948 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 ZL?$_taimj^L;ih5T}4~DR`K<_{{xIS!JPmA diff --git a/clients/unity/simple_sample/Assets/UVTest.png.meta b/clients/unity/simple_sample/Assets/UVTest.png.meta deleted file mode 100644 index a485b192e..000000000 --- a/clients/unity/simple_sample/Assets/UVTest.png.meta +++ /dev/null @@ -1,36 +0,0 @@ -fileFormatVersion: 2 -guid: ffba25341839373409b0cd511e9b1761 -TextureImporter: - serializedVersion: 2 - mipmaps: - mipMapMode: 0 - enableMipMap: 1 - linearTexture: 0 - correctGamma: 0 - fadeOut: 0 - borderMipMap: 0 - mipMapFadeDistanceStart: 1 - mipMapFadeDistanceEnd: 3 - bumpmap: - convertToNormalMap: 0 - externalNormalMap: 0 - heightScale: .25 - normalMapFilter: 0 - isReadable: 0 - grayScaleToAlpha: 0 - generateCubemap: 0 - seamlessCubemap: 0 - textureFormat: -1 - maxTextureSize: 1024 - textureSettings: - filterMode: -1 - aniso: -1 - mipBias: -1 - wrapMode: -1 - nPOTScale: 1 - lightmap: 0 - compressionQuality: 50 - alphaIsTransparency: 0 - textureType: -1 - buildTargetSettings: [] - userData: diff --git a/clients/unity/simple_sample/Assets/VertexColor.shader b/clients/unity/simple_sample/Assets/VertexColor.shader deleted file mode 100644 index daeaaee08..000000000 --- a/clients/unity/simple_sample/Assets/VertexColor.shader +++ /dev/null @@ -1,31 +0,0 @@ -Shader " Vertex Colored" -{ - Properties - { - _Color ("Diffuse Color", Color) = (1,1,1,1) - _MainTex ("Texture", 2D) = "white" {} - } - - SubShader - { - Tags { "RenderType" = "Opaque" } - CGPROGRAM - #pragma surface surf Lambert - struct Input - { - float2 uv_MainTex; - float4 color: Color; // Vertex color - }; - sampler2D _MainTex; - fixed4 _Color; - void surf (Input IN, inout SurfaceOutput o) - { - o.Albedo = tex2D (_MainTex, IN.uv_MainTex).rgb; - o.Albedo *= _Color; - o.Albedo *= IN.color.rgb; - } - ENDCG - } - - Fallback "Diffuse", 1 -} \ No newline at end of file diff --git a/clients/unity/simple_sample/Assets/VertexColor.shader.meta b/clients/unity/simple_sample/Assets/VertexColor.shader.meta deleted file mode 100644 index 237dcdef8..000000000 --- a/clients/unity/simple_sample/Assets/VertexColor.shader.meta +++ /dev/null @@ -1,5 +0,0 @@ -fileFormatVersion: 2 -guid: ff990239cc3bc4a45a362f932463d378 -ShaderImporter: - defaultTextures: [] - userData: diff --git a/clients/unity/simple_sample/Assets/grid.png b/clients/unity/simple_sample/Assets/grid.png deleted file mode 100644 index 4fa59d48d6fd2c2739ed835a5e628c0d4d2e68df..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1615 zcmeAS@N?(olHy`uVBq!ia0y~yU<5K58911L)MWvCLlCbx$lZxy-8q?;Kn_c~qpu?a z!^VE@KZ&eBK4*bPWHAE+-(e7DJf6QI1t=(0;u=vBoS#-wo>-L15RjOeSEA?V8lq5U ztY@lcXkhTAXdwdw>po8x$B>G+x7RlE-f<9MacupzP_wvmy2E3iq==_$F27^={anB1 zhU9_$+57MN%YS*>x|dO;R{90+f)}?P@)=z3vsE!`{4%>B?Qn5><2{D1eY{`T0>0!f zFmG6t&x}XuKb{Ac-@o|Yzjtju)9CQKV{V-!*ST{ zIL|Pz*#G{Qx4C~M8EU49ub?adknFH$t~h5~dwKizujvdQBI6d|4>=@_qk&8yl_7=I rXdolPYBVLoORphZT$F#^f4~08VX0uB_NG8!dC%bK>gTe~DWM4f8(hlP diff --git a/clients/unity/simple_sample/Assets/grid.png.meta b/clients/unity/simple_sample/Assets/grid.png.meta deleted file mode 100644 index 4119659c4..000000000 --- a/clients/unity/simple_sample/Assets/grid.png.meta +++ /dev/null @@ -1,36 +0,0 @@ -fileFormatVersion: 2 -guid: d420514133a0fbd4990025b3e1dac764 -TextureImporter: - serializedVersion: 2 - mipmaps: - mipMapMode: 0 - enableMipMap: 1 - linearTexture: 0 - correctGamma: 0 - fadeOut: 0 - borderMipMap: 0 - mipMapFadeDistanceStart: 1 - mipMapFadeDistanceEnd: 3 - bumpmap: - convertToNormalMap: 0 - externalNormalMap: 0 - heightScale: .25 - normalMapFilter: 0 - isReadable: 0 - grayScaleToAlpha: 0 - generateCubemap: 0 - seamlessCubemap: 0 - textureFormat: -1 - maxTextureSize: 1024 - textureSettings: - filterMode: -1 - aniso: -1 - mipBias: -1 - wrapMode: -1 - nPOTScale: 1 - lightmap: 0 - compressionQuality: 50 - alphaIsTransparency: 0 - textureType: -1 - buildTargetSettings: [] - userData: diff --git a/clients/unity/simple_sample/Assets/protobuf-net.dll b/clients/unity/simple_sample/Assets/protobuf-net.dll deleted file mode 100644 index 75584ad26e3d717f292d207a114ab36ff5ef99a4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 187904 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%0D?m`r*Ov!;$O(l__AUSojJILS_8 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 diff --git a/clients/unity/simple_sample/Assets/protobuf-net.dll.meta b/clients/unity/simple_sample/Assets/protobuf-net.dll.meta deleted file mode 100644 index 5f3a48edb..000000000 --- a/clients/unity/simple_sample/Assets/protobuf-net.dll.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 8946b1d409fcda6499e46ca0fd310b73 -MonoAssemblyImporter: - serializedVersion: 1 - iconMap: {} - executionOrder: {} - userData: diff --git a/clients/unity/simple_sample/Library/.gitignore b/clients/unity/simple_sample/Library/.gitignore deleted file mode 100644 index ec8ae3730..000000000 --- a/clients/unity/simple_sample/Library/.gitignore +++ /dev/null @@ -1 +0,0 @@ -expandedItems diff --git a/clients/unity/simple_sample/Library/AnnotationManager b/clients/unity/simple_sample/Library/AnnotationManager deleted file mode 100644 index 15eabbb4e6875d5ea182c0b4eba9c4c7029b8496..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4596 zcmeH~yKWRQ6oyYA+^^vtcmgOQg+PUnW(l{IK%lH5%9VG<*$kSsk;i}%n(d%K;?nU1 zlyuZcNYp$4Pe7fTo(klJe9B^)g5ERmcLU_ zyZv}zXil#QsxG&si-TgJ5@MisyB!q53b!9U5S6eN^#@v47;QJ#>Xs6NN)~Q-uLC`r zH64%MDYr*DX7@2{sVsR=iMsCIbV2TqDc`QGDb*0cUT(@K*5NKvOra|wQmUt&IfxqR z?#ci-XAa>wmB3Lu-xQ|tgw(?%VTp+*_%_c+8pJWa+2(mo=9uPcYjsnoA-YFNI~q?I zH;Ye)e+-#Fn`v#GYi>e-nEurhI#5Vo%5L zn0Mw3GQpX-jCba2w2pgf?EjtEa||(^*u{wPP1vZkpm+C?HdR5NMK642=NZ~tw_eMY z!hIOE3;jZjW?|{}u}Im$xak*(u2hl($${iRav(X797ql%2a*HHf&X=Y{_=-|LpYVh z=jV%lK{{#$?i!sZ&>F1B@H2xc4Yw(Hy diff --git a/clients/unity/simple_sample/Library/AssetImportState b/clients/unity/simple_sample/Library/AssetImportState deleted file mode 100644 index cfb43eace..000000000 --- a/clients/unity/simple_sample/Library/AssetImportState +++ /dev/null @@ -1 +0,0 @@ -5;0;-1 \ No newline at end of file diff --git a/clients/unity/simple_sample/Library/AssetServerCacheV3 b/clients/unity/simple_sample/Library/AssetServerCacheV3 deleted file mode 100644 index 46d624a86203e3f200c7421fb726c8016bc9d3d8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5044 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 L%nSlWQpWgy*Hy*7 diff --git a/clients/unity/simple_sample/Library/BuildPlayer.prefs b/clients/unity/simple_sample/Library/BuildPlayer.prefs deleted file mode 100644 index e69de29bb..000000000 diff --git a/clients/unity/simple_sample/Library/BuildSettings.asset b/clients/unity/simple_sample/Library/BuildSettings.asset deleted file mode 100644 index 60a29ff50c491e8f0d28d09187896f353cc0d4a6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4116 zcmeH~$!^;)5QfK1mvl+mG<^;O>2kLXJ7^Ax4ZF*+pu}m!Rwe_Ia_gM@0(qLgU)`CJ zg&2qxpm+X&NQ(S8Gx{kV1hDr9;ME%dcuGBW0Pnje-4EYS;O~09?$G@WU4zP$dWJC? zdl_J$0s^hB8D~A*cpRdqX8^6Dl3b5?k|fM(cdo~q zb*Z|yJJ%CpSi;mp$P4A`Ogy{4ncXHb=SnD4n4;C_KjH6Kd6XD*93rM0HS}aU{(?Rj zX9az>S-*ptaN)kHh<>j8PdP&2pSSZ9@1l##E3)X8f6>m5bd{?}g{bnDKe&gVXQ(x5 zse|7Z)}6Y^kV%!5CKOc1)La%Z2=ub%cW#&!O1ob*SHH)*1NZep*&Ow@fk$m|(W7H;@O@(xGyGNZ jm6RMv4kQPX1IdBpKyn~CkQ_)3BnSS_fsXuIbVUCEJqfEh diff --git a/clients/unity/simple_sample/Library/EditorUserBuildSettings.asset b/clients/unity/simple_sample/Library/EditorUserBuildSettings.asset deleted file mode 100644 index 26efb14f654f9db7a2ed02b7725c05d040c5c209..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4172 zcmeHK$!^;)5M{cg`@T2bz91-)e1PpZX$&|`P&G(z1tpGc)--8QlpFWdFRwd8N~r`` zb$aSW16ZWQ_xOg7q+~L-ZW+7ZXN=vz5(~z5Hn%q44|dqE#bU9B_ZwFj+Y{0mdy<0f zWKxL;oRfN(vJOvyA#UNBcp(D&$=FLQPI}sHZ?VbOqxc&n?m!CIR~%W`VF2c(Ct-bt zC}WY}MfxV;P8#j|zl6;cMgLT`t>yFlN;zE4+Y1bFqL4!>e}I=IX^KLU>Z!9h7$&&m zUh677#3=e%rnR28Q`=gLv1MA~W5K5Wa|jk3gY$AWDo6)?`ypyP0F_X_4bvaAh=<)Na+%+BO+Uhk}_cP3i4ge39L$ zlu;JDKLfh6l5!kvS1ET_Qc$G}aW?G343szE-b&7w*ql{$!e*$hl&aUn`IPBHa3dqU z&Vwa7u`voKv`fjD=>%|kX&xTdLwAkV=2S%E7j9}QSKWh^1(c-=S1@fij4a* zw%kfceRj|5@q1@eB@^jBW=idjAQ=b7i@z{5j};sM7Yfq!&xBtMbYQ8HoTlozZWNTq9eQoHYLcb;&2O0+&2O0+&2O0+&2O0V2jG#C z-FU~d>u~_up8)5_0C0d21Hg5s+qs!`;j5~u7Jh%=bDt@v&DcsalFq4OX5m&?2}r4E z51~!3CBQC*@l)ZhE+Ky&Ca*Gek1CT7bAh|Iu}Go>iXqR%0@(vyOx0{6=B2c(&6 z^z^N?e0z0Kq7V~xNZpF;W~>TzflZ-dcf)ZLTNL4jU}8p4jX29N}6} z`E4G$e?s6e&LiB={qh95|c4&OkAD(gUfhqL&Qk^Q zRN#bEWKVe|^q_+!daU29RsZ4}EiA@(!XRf5T5#sSma3=>OBJzyP^?H5mk?r0Y{(qe zb;;d5(n3J51RfK*!7-I*{BEh7>+MMcuiL1&cix)nl!1ehHH{azeD!i0JPFjZU(L5B z<t*4Y&Z}Fsh50%)MgTPT@#{PyM{3-Bc%L-%# zvI1FwtUy*EE07h)3S(P1p9GpKm;n-9~eHDg841E2v2t3?|HP?gz Vf2_RleFQ-?@PAGYukgDq{|=LhzJ&k) diff --git a/clients/unity/simple_sample/Library/MonoManager.asset b/clients/unity/simple_sample/Library/MonoManager.asset deleted file mode 100644 index 80d34e17d4aaccbfd1c45166eeb5744da41c2414..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4100 zcmeIuu?mAg3!(nW<7n_4Woo7;`a6fDi)dn2^jsWPxp5MHLt<35Q9I?J3VV@RX?|>1d{Lt6S9< z$3q2*H$H$To~e8RKf%r5Tt0v#e~=GgvevnDpFYw^WAcbpK5k9#wb#C!>plvCyS@#A z)m{(;$AaJl9zk&S)ag?%jLrt%?eFg&!QX#E+Z<%kq_`v|6PX1ak;?$WeWLjxD)=A> z?!x2RT2h=j9gMfH^xu(#;>~C%FUDdg4~{~pfaYnxUlwDzm1;B$Ky!0f3}u!p6QtzF zn&5M+P+DUvrM`mRt$_MerlQ?sK8|?id_zUyNe8)>B4_<%fP@%vy`m{joXgM5XL zi}3&MJ)s8?2a@Wf{g1?cfV(lZ}KZdp`<56oZj>~bBw4Ff6&4T%-KE{wy&SIHyHaI-T ziDSY1sE?~W)&8(#{)Lb6f+E+?(CE`uIf`+U65Wus*Oa5G4jymH4a>D8Mh_7~{U0|m zjXcv=@;ElUsI<>N2Zr%ai3jY$YzMqEIhNE!jfIB&tw}LA?=OJ$fH$*1lSlqNTm9cP5 zc*K>}s!Esh^(nN*yzz-3Cl_t7PiJFmVqzJmHy)>0iDQ4TIpeLuSw`ZXF*rBZ70_7+ zehnPsnTfN6kdyNjG|pjMfevNT=GvJ4xrLilDU(iIsx|FZ$T=1ari;7GOtgA(QtWQw zx~j~i<~k2dI2(64&Bh`&Xxe=Zjbq<%;&xMJiHKVpncNV0z8>xD;x=qY`S?0;&mN4$ z7Qm%PyUyD-@?St>zI^^}I_^h_RL*Osa)s{z%W+`v9jr~=bh4*pUA%XEoyyVGv=D{a zgL=Sno_cn>vDEv+5HjuqJvk6q`V~LYr}mMHZ?|y^ok{vXLgU)v@w5~G?}^zln5#0u zRW!6WukZC!?1^O`-e}A&o{Y=GDE$cUXZYHBQ^YCxKSSfXj4@V3gIMP63&UZ=HC}Un z4jIR7Eq~tvT9j;|r-oU1vkJY4CeWj~gy%GNi)aD3Fb3$CpY<8W+3Q25(Zyw#r4@NWgATp#>? z`~9^wGy1!6G||4U0(){HmTDUR9PrLOtmaJ3t#QvU^nt@$W6R&_@d1uDEt%7iiuouy z<~Ox}TN1xhM9CY;4kl1rA6{~^;Z=P1K&Q1x=Phvqb6a-@XFKrh|9hd!b>HM}w!Kai z$Nf}f!)X$790LdU_sfFo5<*fw+q0gwb009L4zja3iA8}QZ`x`J!j~2Xt9Fw7$D!-= zS<}bLw=FE6+SUn!ch_RO-(l#7Zwz;2sExWudRZ&vP1<}Ax?HChC@DJ+0n4+{Vms?n+>m)~N&h_bF!XuunPW>U0z=<+ zf#*K!;=7p?MVhHdh>3vV{GNreWW>D#9RAJn-KBJ0Rz6&Z68mvR%vNtISlWvZY46IU zh{pJVl6w#J#)r07Yf>+Pp5Kq2gQ{jDHU;*8@iIdttPD~2FVN*$ZS!r`3jf%wVtEf( zXI-1G5>`uw()|j$tfwxeef*Ycc4_=gA8tW*qLx*g3T59w#=6kxHRkbc$ap?5vYB)C zZ@_RZY+{=8?eD;FuFl4UD=*?8ow2Y>aXJgtGPFwH{sBGCZ=+ZF9j;tS;=O659C+&e z6VI^LQ!5`%0p(QyAA3b zLF0MHTW8H!(RUlf`F9(9$Nh}s%O5w^d06T>-2TQ0^1 zM>*GU`t8cSE>k=qFwB#SvrdzT`z&L3<+H{h_jC5Ei!*1fDoNx!gXa5XaMpe0*ID3b zdj_8$hQhxDtna5i>zOM;g*yiv^LsF_jlQ0T+#|36HtseU%Q3Wr?lvgrd_BzF2C=lk zK5fj4%4pLk#_5g63Tcx_PWA_zGaf6PWhCwygL89I0SzH>JR2Y8Zi85!L%1&4TAS~1 zEN|4>e7C5MCgz|znzDIyGUcD6F$ajp)X~#*GI3v^Evl1=`x0$lolMLvw1eto%D+Zq z|J6R(4Xv(|iMx|JnfTjNyw%jJ>SW^Xv@W{ST9h`vZ!JpQ|F;$;$D&%4nD1MQQuj`3 G(fZpejfBo`roCTy~XMRthnLKc<) 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 VlfI&PS8JiF=KB!b`-Qt={}&evN{avh diff --git a/clients/unity/simple_sample/Library/guidmapper b/clients/unity/simple_sample/Library/guidmapper deleted file mode 100644 index c5e0dbedcbc79d3de9a2be210270c7473e43bba1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5204 zcmeI0eM}Q)9LFDdnGWU)2#f`z1WgP}yvoZ)oYT-3N&#Cs+EO!Rc-%d053ap(ccdU1 zVa$~2pcrKXvM`fjVnhrHA!dX*|EbAdn3-f`aVE?Kmn}LmghXaGyXU!U)6-z~-~PHM zY43UNKF{~}`+cA1{vI?#ixENj#B}-nCfVc=2jTVVz4(+a!Vy%4+!$T!jAY<$P11ppZ}X zX0B8#lChLkFhS%QpBo5};(WAJWU7+tSl!N75QBqBztYw1T#ugP7UOWA@{mzG@!bvh z7HUf3`LP`th&L7fsZDi2bwG7MbwG7MbwG7MbwG7MbwG7Mb>M$<;58J~On@;4UYqP69{-(TEe~LMs8)s^umlL6$WuQ;g z=sA|-?XXoODB)6m%GQUAd#c92zw61~u^~A-KF3V@%b`zGPI@8gA~rHwqwhQ`==)Od zWZwOvIV&yBI%@4u5Tz^txcPQh*=c&c<&rk^q*8D>ZG8v(MD89H6qmeBRF_z0hi!?&Ic zT|4!GZel5U1+*VcQshuZGa`o$fk0$1_w08Q2P!X6OM7&0?hE355%sGU@*-@N7M2h^ zB#n-M(1-uX_H)ZShV`TSA5~wyec-~DIIpxoW9K+lKw11&U>%;z(v*hs{y2ZVJ+x(8 zoR@RZpk>jq9MvQbapFIvHH}S&?&+@V8V)~skTkEzDY}1RbEGmsPk;EzJ0*f?a(Lah zAGLW3U$jPgj)zvfz!b;gnSb?^PVWoM8%|n}zxS{*7{JFE(b{z+O-TD`Dd*QO>*{V) zefss^f!TUpK0YmrGA4(?Xtg1sshX?d>pS}^KA+55nEli7yQ0QtJV6I&45jrmIQF&i zgR`$UJ}Nt(J(D>()#+61XPZd!BGKYw#5MpLg2!(^K58Rw5i)&9q3YiHiQ>V6dx;tGeDO=?WPCIiK-@rTXtDAAcMU@a!)sRV+h!D;mWMvl%+V0P gdc8juKkh!$rTZk`k`LyHe-s>k>1-6w`0+dcFFce0djJ3c diff --git a/clients/unity/simple_sample/Library/metadata/00/00000000000000001000000000000000 b/clients/unity/simple_sample/Library/metadata/00/00000000000000001000000000000000 deleted file mode 100644 index 411946a3983dc715daa9d0a24b58c5a4462f4434..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4268 zcmeHK*>2N76upJEK-u>l0v}M(1;hhFEu@7!6e3C`B!sGIJxz=prhBbc)Y>BATC`nSQ)ALqGcc{&Bt@A17M0 zRu?O}P<2%(dZDZ)p6v^se~w|$6CbqJ$cwpI>a4%r_^daJ*J+}cGu5)hZfFcZHk`xw z)mo!Yt(`QH_~I&>#Z%s8!m&R-`Xr8!7%Vu!IEKwQ7@mez!Dbz7!l5c*a}G9H0<(ol z^A>HZqWwm7Tw6}WxSor?XpGt?_lwq@WK8J7*n(@}s%xE1ziKIxmqaY!aIx7|hR_Ll znio$jM))>#P1;IxmA!1Myrp^h#O3Me0Y4;PLU>?M#+ew~D=*_LV?yw%GR{SQfQ20{ zqx{&t1TSyqup zES12){5r93)-8_%76wGXNlGsMK_=WWZCF{PO|f(yl|`(b!FyR2v33TWXG~{(AWf(r zCb{<9d6=J2Pge_{7s~lrrk{s76APy69nmDWs?KY&lNF85cGqw_s;PhmdEpsRK?wN= zsqp=8Q(-{OHLHz?HYDxezB!q2vgrd|Kkzj^;&4C=a1GG~jd9c-Je=I)>lzcB?|)`~Ch=J|7<^ zTFi58SG843$|`!Ma!tJ27d-zQ!K5cXXuX=*`8jHDys3ZGoAzaz=#`dg{tOT zwV?UDNhbtf1TSQuMy6s|ey^7ONoBKekx1sqN`o5~QF zkgF#hVBiU-o`#M|8)>Fm&zmZ1Xuf^o@>FzzpOP;jTreo(bd2p4mvM$MA-%FPrXoM# zMhut18Wanja3Zn@In|WWnH7OJk-DhBl?dcK*4RQo%nJl^0spg=!Ms2&I#eml3*=G( zY&BWwY#R!dETw!itn8l49vyZMa(K7b)h(Upvd`K{WxA>Irl7CzYT&1g>8nxvP!WoL zyswyR1&|%yryWBrRoAUtf?bbL)N_FkD)0Iq`g0W_M+M7y)`7RY;-1tuYJwt==MR&gls3r!>K0!}dsA zZ~M6sh8iMK{(2*<)vS54oTQw^@~+ico_4aQ+(>IiZ>hT50zNPjj63BRR~_-+-dIUn zn%gS!h+8FaFn^!eH}@@%0~Y4^b2v%K#oy0_8PkS4i_jFe&cm{Zd*@+U#Jw}%ykgoL zgVu!lVUlal9S`ag-P6^=$Ax0e6!p(x&BP7UaY8i3RJ}^;MwvZ%Fjm{$j$uy9^#GQ9 z_ZjIyRQU(>@a=EwVW7|TTpQ`!=xhJ>@yUXdogXx7`5bR@80ZMQJkWWeWeh0v3y=Fe z(B?2kHez7Jz=(kn1OEd9;eGNR7h5wOe7vt|Yx(Ooe^AZ3+jdoDs-ew{yepS85B&;{#K+6b{gsD-vri9$r%6++ddo;pT}6OE^ZvdSm$F?;}D zM!4tBOgbrcg^+*+xsu}<&+&a6pSgC3CeIO_|4KwB`OGJx+Vt%7%yx~w_xt^$JRct? zS||!_SG84($|`!M3QfG)7d-zQ!JsETXk#U}bFR>{tn` zuqMk>>MGlOt=f*3<1w!1qAwVu_Q?H$x)Y2EER4-N3fCNUMfO=sk^D%+0uGa{rZNO3 zJ@pS6?PR8tjAL0{$7z)uy^*P{5LA{702 zUoqE9AiKOzJBC`Sp<9InyAh$N=K>#8@J+^qgn&UA2Nisaufakx7<;*ihOrZF<06}2 zdgZb1_;ralUmoi&V_<`vcswk#d$K-^06mXtq|o5jm<9b-Zxc4>R0Q@znqaYEdnB&6 z{oDvc4Us5+y%E;y);w8CGR|V@lht{Vb@Hd&Nb5##tA^VGJ}?rDJLMQx9r54ZT+UjW z+bZ&iTP1KX|D4!2_brbD7UuYKI7!LH-_L{@(}p{X&=j}M!?K8b=V4jIy))pvV%nR7 z)`a?Dl55YM59$-$)78S~`Et#a_0M6=#0}GNLUfj?dX+VdGJEo3TxoYZhB>L$16cCi zXQT&F*t-Fmrs1Noe+nwordoJI8b9R?#@;uRnLn1oOXFd^CX69yQw=49$+wC6b`S>`| zqP03-)45twxuO@!YU0(d;Q8km1|9K18>?A9KS!<2ceT%YD}S9PdZnrAme>uA0mz1P z7{A(BU84GKnn-+c6|Leb?=s=oA7?*_BP0e3PB4yPj~xtG!^&WD4mROXrLcJiJ5d0$ zxkV9gzD4b*C5;SQuMy6s|k!Z2DD8k$g+U0uGa{hB5>u z0-phbo16fm|to zttBh%T|=RgrIc?*F1zQdM~B^m96lWE=%%(-_E{^bOgEHm2>KeY27bzzz8=L76`|;- zM~b;o0NLYx+BVcwHQlrl>}G_bjte}f;9HCd2?2vL1{Hjp|AU2OF!pj24Pz(V!Jlk` z=@iGh>(?dTLUF8njDhuX;&H#s?#p^V0`xqokV1o7XBPB(y-nDh(-GJYX@bRu?UA_N z_H!c)HAJHP^+s5&=H}UQl5!Ty`?=0++RmPHBdr>}t!i!y_`pao?v!I(b;N&bb0uwR zZmY;6Zk52n{C#5I+_yXqSeWC_;Upy&|0ok?OdIYjLQ~v2hh-7>&S6=^y))pvVp^NM z)`a?Dl55AE2la{W>1yHgLa}Cw`e(mp;)dxsA(~>U-lR37%z-=@S6e%6!<>}s0WA6M zGtz^o@(=3a@Nes(r_T+mjdX7GwSW8gWWmYK51QTQIo{-Opd(<8&I>K$fI`3V@sJO+ zIUFM!F)(6a#K4Gw|AB$f@E>roRnx}D`?}6^{<^h~2Ie#Jx;%uG@R2qI^4m-JNF2z6 Q=Xx*IU*s)J9=weC0p4E8y#N3J diff --git a/clients/unity/simple_sample/Library/metadata/00/00000000000000004100000000000000 b/clients/unity/simple_sample/Library/metadata/00/00000000000000004100000000000000 deleted file mode 100644 index 03310642c1849d7b4820b5fa488392296a11f332..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4308 zcmeHK+fEcg5G@qEpyK_0Bk{#2MA#S~i~$9d1aKqrWDMzLn%yzGv!r`K)~EdpKZh@K ztyA5-^x_OLChCJ*NzZgopXsVPbGl}RX#674r2`^5%V$0jRiXvvJ8Uc_E z=g@z%vAjU_-82#ZvQ#vSyZn*~`~EonNftt2u&@aFG3=>>;ci$NY{tRH9I6yH>tLq} zU^X{tR;L}6H`Y|k(Q-P*b)ENlV^oLS5!9VwOkiPT&QZATsI%!;ElKht5eqmBwi?P1 zn2@{29iYDwhMtDDN$Y8*ny(uwt80FIvgEnw2Hz#0Lb#!y#`zfAEl%SCV?uakX-q`x zga(sYh|CclFDR5*@mER@ND3xjOm+^|Bw-q zetxK!TLq9k-luItO;yuPE6#35DC#=LM-_aBF(Dvekj7C3-{ott5DfZWZlYoAgnPKi zCYWxquls&p{LK~ndcYW1KPK)E%Iu-c4%%<(^B^T1F(c7x#wt#nx0OLwI!dXZBw>Fp3 zrslGWIO0+X9Lzr_UYqNd#{mm-{5hP2#I^IdDB{`~a9%O3 z&3&{2@iR$Tc;qzRvW{T?Ppl0HN={O;pV5(Nqno*`BFUIB8PTMdi<$3^1 zzWNOHAgcU>dN}yodg$wO!)hay8+Gm9zCKxSvh#yxa~|VM4hM;$*9)ji2{*o#*^_YoDyCy;W@+E2^W7osy5`QcA)P cS}EW+C-AE|5C@O>({wM@U*s!HUc7wm2Ng!gxc~qF diff --git a/clients/unity/simple_sample/Library/metadata/00/00000000000000005000000000000000 b/clients/unity/simple_sample/Library/metadata/00/00000000000000005000000000000000 deleted file mode 100644 index ebd4be0dbfd6099c710ca14ebc8e84c2d692302e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4296 zcmeHL+invv5S>C>pxp0w2#DuGFCZQeYD-$EL?NQ|38BjAy2+x=Ch~3y;VGZM$M6As z8DY-YPTjIwcmW>BNX~lKXJ^L8#}g++Q&U7|z7o+fzVd}=etKs5;r0xD9}EVE`F?zy zXfexlzNT|kRk@-im1*M9f#CV$5ITMFK^v=SJ~vCP&DZr0dMkesM|veujf~h0jRDAp ztM5PGSglf{8%GjfTm_?e%ejm=_PYn~#Ss#Nc_-+Huo(-(+psd&tc6WjR4HuE!X^t~ zS#ILAK^>JhU#XU*xD{FWoNCJGG#7zbk=m%hl?dc4#@Kv7^a})X4$s-jU``9NzXiI?-7s`>YksSDGqo3i=X{0wHaoSTL7)9OiN8 zW73az6>|m8*h0t-@6)!SMAdbYNwBLHBq-`z^nL|j3%xJ~)7Y=z>--FcXx^OMM8nt# zH{5_=`o*zsGR9|ICbL_CA0Kb8%x)JTK+mIjQYdii%z}QSw+WlG5`bNoCRl9P9+9nW zKNmtjhd`9SUkGcp+&o#1V$NduQ?Ao2Zl_PVkk*XeR&~1tTwo*^R?0DEC*Z%exe_Ou z%PR5+OC@kHw@&Pv>z2a-3j@OABqbYvHxp(|8?G!uQ&>6=$|9_t-g{9NVeRxdrS^b~*M(wz7S+$anh6W0<&J2QsjBjtbd!9w)oB~1qg)Cg$Q7QE z6hx4JPzvAvwiJfa+{m<%qK%UFZ@)QNaI)#WTob;>Ar1}2pu-JC7cxex+_^jXh41fi zLxn>d*@%G=10x1T4E#3?_>&yY{x9RYQKol)sT(IzEm1vfraOEL%?@D0|1diM^2;HA Zt_y)UfdzRGA4hj${ZamskZ)Wb{{eUUz}Wx* diff --git a/clients/unity/simple_sample/Library/metadata/00/00000000000000006000000000000000 b/clients/unity/simple_sample/Library/metadata/00/00000000000000006000000000000000 deleted file mode 100644 index f0ad51fa088fde7d736c10b38468ef022e4178e9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4304 zcmeHKTTj$L6h0_;LB;$1MvTvhurWRu0}3dK=tktp7&1$T-J0E&Oa}y?_GkEGeDIgK zp6|@eGK(!SChCKGlG#pozMjk1Z%$jH@v}tdz7o+%KJtO6HZ?Ofy;-C0y8XE840BWfeVBg(hC@37&tBVA2&Iw6>ht*%|7rziE8b8}?~Jn9mc@=Iq`f@W_M+M5CM7~)kvYituhPxt==ST&dCVur!>Z5!}dsA zZ~M6sh8iMK{(2*<*R6T7n53M=;;z+Mk>=S`ZlraiH&w%J0UsC%#+`D6tB&~ZtS_Z) z&21HV#H|uIn7>c#oBNi>0Sj~dIh>^A;_qj|jA_H2MQDm!=V4jIz4Ndv;@%l>UNN2Z zerrPgFv+#+jtBLL?&)gb<6OCB%KGP^X5xnFI3b!~s$QiHqs*Q>7?(R+xnWMK^#GQ9 z_ZjLzRQU(>@a=Ewp|8)iLL2Ga=xhJ>@yUXdogXx7`5bR@80ZMQJkWWeWeh0v3y=Fe z(B?3PHe_JPz>t9<1OEd9;fZ{Yi>;d+AMdN$TK>8%9?WkiX}+Q|)zoH6-j%Bv2_IEHrQGj#=o8|plr};G zp}(@Rx=8h%G!g%@R5Xjb{E`X#{y6hV7D8aKun77w?1_WnZde&?*1;wmsuVWoU?&P- zHaBTjr;f@SZ&l0Dax%tso%aP})IPZ*s5`}&z{1$Pqj23(XVb4*lH^As7H}ABHIyMR zA$LzYKz}6+Jq>M>*3(QiUo})#*ZlZo$urRnzDquZa6>ic8tU(0h<<@UF5@~|8O#ghibIvcyg;rN zz}AxG_Ku;D$zsY6BbVKC&7;HaK@1=EJG!Z@m3`JqDpL(*8-l*hvw@#7rf)?4Lqn%LdA?XPMfGz~GjYLmoDiL7s@|kEqs+d%7*|`JwqZ`n^#GQ9 z^%?0wRQU(>aPYVF(AVdN)kZ2e>e|13eX`(W=LgO1@fcrnXs8Gnqw+$_Xi(@kZjZR3 z%%P2J#K4Gw5d$Lz{s#u|g8_TUt!mo%d0*Fg&VRS|@rqHMM!IFgg=zU-7I@(y{G=65 Y{^mujIUEOnn(n6hi+qL2id(MI6O7&2vtc1^n_vjc)p{TcokAN*z3 z^PQO~Q`~KgiTYqqGTqtEx99ThH)nT=#?KR7_)0{l`N#*N%Jl5?%yxyoce~x=d_Fo# zw2AyeDUxrASis?AtDy{m z3AuXQ0eYTr>S<`3w4P?F`J$n+y5`#_F3&_4_$m1k!UerD&c@hIaT(_r6VfXyVtU|T!}y~VvQ{X#JoTtm+(JZ8O#ghvO|@^yg;rL zz*dvx_O78&$zsYk!^-Zt>d|5MAcysX9o^JlR?wy0Oh zyU$P$qRKz0hi`vd4?TTu^jS28Ij_8TcO<2yb5Zx!9^{e@`ptMULs!Ux&_ Y$Zsv-O)ScTbJTmO{v>Z;^3dh=9~H#K@Bjb+ diff --git a/clients/unity/simple_sample/Library/metadata/00/00000000000000008000000000000000 b/clients/unity/simple_sample/Library/metadata/00/00000000000000008000000000000000 deleted file mode 100644 index f62855512f78c37d235017e72a8f74f7408ef12b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4308 zcmeHK%Wl&^6upI(M}hKwzq&zURZ1Hn76`SF7AjGQC|w~`P3mc46g$<}Ee)%D2A|U} zBiwUmCY=O3f(5W3S8_a)IlhnMGuJlJ^m(ESheULm&wL`P%q`5#?^Nh}uh%=y^T|n~ zX-qkD88MWW;W00zfvL z{rJ`9T9q1maU}7@Rj`VyoXdz~f1Lj$j*uA4JHa@FJ+?4h4J(5!SlE_h=9 z%T1g%XjkRUw<@u;oD6YY8-3Xr)gk)}>P|7nvoNt_DcrEsW${-nMe;2X^Egblo5~QF zkgKOHpzjG&M?>4hjW|`Umra#6G~YgPc_z5P4at?@FX)$XHpF&|%Q(jvpI%uRGl3s} zBL>T04T^bBn20QVPBmq8nu|cJNNrT$N(6EdYivFs#svbog#X#fU``;HEvgje1ahSS zwjQmv_YC<;sxjY;Tz1b@hxWS%Ieh5s>Xyzj*=I>qnQf}9Dd=mw>iH>S`g#!GSA?RU z9x3KV0c4-|Y1>ds)paYAU^fF4b#35b1>a(fPY4*4F|6R*{2$CGgRzsFXc#-;4*p~l zOt(1JUAHdrmWpHDV+^dH6ORXFc3;*95uoQug%ldx2D6~w>m9=8oDINkNK-5}Y>&wH zwx1iJuOSfSuQ$S4EjQ0rqL{N-ImmUI#qIPtH`1EXJF0HCfD4QS!%jKDRR{bhTdQ$P zb6Z6oVXFiV=I#^w=Dy`{z``tl7AGm$_(z#AW7=?M5t_o*IVy{=caF*;?42Ix6q9WA zTNCPsNv>Uc9@Zzir>%w0OU0Tg>Ysy}2^*&6glLATdK1@;G97s^t|hx|!<>}s0W7)h zGuDHs@(=3a@Nes(ug}d)8|mEWYybA~$%2!e?=^eCbG*snKu5qFoflfh0fm0!;~^ht zb2!E}W?;;~n1L|^{{sX5o$3J>TQhBZyl?0{=dauBQMHq*B;L-}RjL}=%*pHW2vYn< b+6c&RFX1C`C=bq4@5lO!yoJewmoYy8x**9{ diff --git a/clients/unity/simple_sample/Library/metadata/00/00000000000000009000000000000000 b/clients/unity/simple_sample/Library/metadata/00/00000000000000009000000000000000 deleted file mode 100644 index fe736b84e179f0a5025f00986ff7d2af43e0ab52..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4308 zcmeHK%Wl&^6upI(M}hKwzq&zURZ1Hn76`S_7AjE)v|S-oP3mc4NC3Z8$CVbBpDw7Ht*^K;bPdRP0bxAWI=q*oGE&xqa77=Uaz z`|+#I)g`L$#gW7pSHUW-axNo|{c-k_I6`7D?*!uz_SnL3HLMIaXJHc-RSKK8uoDHa zEH`mlr(Kmd-m0dhX)Xe>BDGP0D-p;=tg-ok7#9fS68>i^gE@g*wy08=6UdbU z*jlvG+B4)US&I2)FYs!UlEFa zdZd^e1(1E-r!7N?s_7(?U^fF4b!^~41>a(fPY4*4F{t3%{2$CGgRzsFXc#-;4*p~l zOs6>3UAHdr7K&rtV+^d96Oa34c3;-}5uoQug%ldxI&wH zwx1iJuOSfSuQ$SKH8;N#jW%?H`1!nJE~^4fD4QS!%jKIRR{bxw^rgr zb6Z6oVXFiV=I#^w=Dy`{z``tl7AGm$_(z#AW7=?M5t_o*IV_8?cMi)U?42Ix6w}=5 zwI}k+ XUcyJ>Kpvc@-jDScc?**VFJpcH@CM1| diff --git a/clients/unity/simple_sample/Library/metadata/00/0000000000000000a000000000000000 b/clients/unity/simple_sample/Library/metadata/00/0000000000000000a000000000000000 deleted file mode 100644 index 21045cfc675818292fe5f191a37a73c80cd2153c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4308 zcmeHKTTc@~6h0_;LB;$1#)A(&Awpw(Fa{J*62V5`$rv(ahjz8ylG)+rQ-6j(hhJtr z-*#a&`d)CYT#>CWzadoJI8bGl13dXebT0TG?$BOiz=6H^nDn-%)r?RHP{`S38& zY@Tboq^+7$R?#b!YvR?e;Q8kSCLQrXYm1qko}$+J``Tx{Vc({SUTCU%PV9z;0A#~4 z%-^gn&QX0kO(ed!idJ!#cbRbPkCUIo5fXz1Cz!{urw)d@VP&u>2ODvyQrNVEohpFk z)}&dTwv=rwtCpkXbd2k`=(EPCeR98`?hIoB3qv!G!WBndo_^I*BtH_dfWyf~Lm2`S za`&hM^gQ9z)6h0)J zi2gEIgJQuGPDBZhKvmy{DQWq7t5`kRC8e0g6d4WK#;5u6w%nRhILzTk3K&}-D(P8%>ht>Tp-PCz5`>d5z#v3Yc2>J%E27bzzz8S?26`|n~a4;R@4 z(*x&nc`Rv7z69&#PfccJ(Tr+1n7BIA%zCF!Yt?ydXum@$0M+x(g=$U+aqzk z?dL`qYKTPn>y5BlwdTcql5!UFdsb(8+Rk2bBdr>}scLQu_`pao?vz7Zb;N&beIadX zZmY;6Zk52n{BvU8+_yXqSeWC_;Upy&|1c9~OdIYjLQ~v2kIN$NoyTPn_s)RxifOI) zS`+GrNv<7tJgQH0Pge^cXNomb)Ia+*6E{r93DFo+^)9U$W%lKdaj~`4Hq1%69>9|C zJ_9|7D*vD!4*s?tdiq?;wUN$^zV>hbK3Q|>q5Y?t;rlz-R^u62d9_91V zQKI=Q)A_2-)uPH3EvQTruXY8`KSwYr#0PDxr1|U&wKrck-s`RWMI7nnL^U&FH#7nu z8;*Ydd}C#in!9l%@x@iJio2Z4h-1H8Fx(BRg3Vaim_=2>W-aVk z2`tM^oHl7k<*iq$ZD~0k;tCsm-Wat{_7~KhV2o#BWX@8!W~s~KPg;uPM`GA<02;>5;vsJ;IKrUKTCCmxr zQVDD|TJG!`@|7&c{4jFaJ(nHY?;hl^zQ3aron^Am+EHz?rLvZwukfnpr;6#TL402k zihg{cm}@1FJ>I7sLy2nWB$Hs*0~8fD@L>htV2n=)7?g2X!8iFD%qN4nlbdK5JK+{C zvI(Xrk9FIvOT4-ASa%o$>*d7rewp2s^?n5Cc~m2X2Dip6=r?+susJ6Ku$$5tiw)Z& zvc2u+M(Aq@MEUEDuwKv2lcgx;ES5gzI?duv`ji`K-RN!Auv@?dMuK6d9O0@1{@a_& zaiY1cB9E|D0ta)?iG6e5ayVdNmOqP=lx+NiOqelkxU&dNVe1@}Mc6wBWfAsHk8_G? zZ}wUf>W4|Lg*_hDC%UJtg^zRPnknm_{hA3Irsafaf~k5LH;gj-^2fN+-su?Tq*@PP z$#tKh9z>OYP!C`KwjO%=+{m<%&W*nIZ~s17aI*8gWe-sCXQ5egpYywEZR6#9k7 zeI96Y7(*K}Fl1oJz>tCefdT)fbB~Lyn+`tS*L0rq*KPK|zLhTQ#!2L_P01_s0Al=y b+5pIJE#X_NBp=RM@5TCqyphSDFynpzUz*JD diff --git a/clients/unity/simple_sample/Library/metadata/00/0000000000000000c000000000000000 b/clients/unity/simple_sample/Library/metadata/00/0000000000000000c000000000000000 deleted file mode 100644 index ef89ded46ede026543172b032c845947b8b903ba..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4308 zcmeHK+iuf95S>EHr9ipgZ++l_r&7`g@qkbZZJ`o{h|(v7s!hE~j1s3>Z%fNlK7-Hc zml5X7?xve!R|pAsAS124>pk9?IX*kKi6+kzUDzk0(|qO=QFW#=Gux=r_kO>BoX6wi zL<@PY?W(qFQCUSVRIZ6<`-11gF?4#e2Cc7TcCJF5jd%6Wdegp66TRG4&761{8Uv6G z=g@z(zOqQo?KBbpvQ#vSyZn*~`~EolNftt2u&@aFG3>E};ci$Ntm0r34pj=9bFdQy zu-uw7Ytojot+%S2Bh3_T59lQz>#wO_VW*3|s?WXUtp4Zcf0g>b_ljk7VfSDeN<#)R<7(wK_Y z2@hg84c4GoSP27>MTn`UjLxhG#EH~-1+GLO7cs{c9HL(!kW0AERtEC|x$ID-FfWiR z1+dj*xw~yBWU`p@!?3b@u6lIXJ&57M-j;6bJePgeNvhK=mA3?ajb{TtWlUd>{D+K? z^wR^y+$ezT@ILJtYOA_#=i=;Ugrc5vd|1J^7!v{l25B5t@NK>Z3&Ei8r1^n2YPY|iNj?7K9FjQN*<~;Jjiw z8-vn>{9zJn&z%qJ6V=n@!sq#7%@ozoVa>z^({VyH#ZqeP9c`>eZwz`HnDc1v7 z^3`Xg2T|o8)WiPY*26%b>$x^kxlz~t?dy{TCp$lA*76u%a%iXsyWCKDp=C5E^c%N_ z+)(DwMmAz##K4Gw5d;4N1L1x3fRnA6E`HwEw6*+qn?G`2rC~TDU(02jgdeoB`QN>c V-^k%O5U1Wr^%waHlNT>zegJyF$lm|} diff --git a/clients/unity/simple_sample/Library/metadata/26/2678d7ad7ff72d248854d487d8f15c21 b/clients/unity/simple_sample/Library/metadata/26/2678d7ad7ff72d248854d487d8f15c21 deleted file mode 100644 index f3f4e722223377e97ecb73bcc6c244e7d967923f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 43889 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 diff --git a/clients/unity/simple_sample/Library/metadata/36/364a32494f42e934bae30ff47badc45a b/clients/unity/simple_sample/Library/metadata/36/364a32494f42e934bae30ff47badc45a deleted file mode 100644 index cf4a6fba4bb0506af26065bc0dab9a8cf984e538..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 25869 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 XmA2!+yUad2wb>beua>_}421s!0&fX( diff --git a/clients/unity/simple_sample/Library/metadata/6e/6e1305e96d61f204f8229e0a0cb7f8c1 b/clients/unity/simple_sample/Library/metadata/6e/6e1305e96d61f204f8229e0a0cb7f8c1 deleted file mode 100644 index 4293ba5254d2b2ada9967cd6365972941b644bdf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9169 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 asKxT5IEHsp@PAYu34W;F?Wi|eFyV8Gz;c)X diff --git a/clients/unity/simple_sample/Library/metadata/73/73b3c5754a89e43409dcf23866eb0484 b/clients/unity/simple_sample/Library/metadata/73/73b3c5754a89e43409dcf23866eb0484 deleted file mode 100644 index b2c18736e763f892ab2827680632a0d63e53f2f8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 33669 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 Lvr_#PN&x;hW5(%w diff --git a/clients/unity/simple_sample/Library/metadata/84/8401f7b1211481b469ac746534a896b8 b/clients/unity/simple_sample/Library/metadata/84/8401f7b1211481b469ac746534a896b8 deleted file mode 100644 index 2c34de4be21b1f3bf68391a5ab980f5459ef3fde..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7713 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 RcR_P=WpqSgbYTGi0058jUfKWv diff --git a/clients/unity/simple_sample/Library/metadata/8d/8d11b6dacbf85e24ead2e95cafce40fd b/clients/unity/simple_sample/Library/metadata/8d/8d11b6dacbf85e24ead2e95cafce40fd deleted file mode 100644 index 4be65887e7c36a68134bbda8d4e1fa4c3baeae9a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17465 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 HO2B^rYg1={ diff --git a/clients/unity/simple_sample/Library/metadata/ab/ab257b5c0c7259943a5b614e3dde558e b/clients/unity/simple_sample/Library/metadata/ab/ab257b5c0c7259943a5b614e3dde558e deleted file mode 100644 index 3a474d07709b7032bde3b72b0b0dc1d05a845692..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 26333 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 iDgN01jg1!kuO)+q7X* diff --git a/clients/unity/simple_sample/Library/metadata/b5/b54fa8be8a38a9f4e8f53b4399135e30 b/clients/unity/simple_sample/Library/metadata/b5/b54fa8be8a38a9f4e8f53b4399135e30 deleted file mode 100644 index 1b0cbf8e79f5cde7de39d20d2255d1a674867876..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7009 zcmeHMOK%*<5gtW$64Pd4B~I+vd34@OYq`5z(uNVo0%ektd0<3nE&CuCLho)5x0BhK zMNh9tS_nYEw;Xa#@(Xgy!G9z_As3%=%{lT{{g~-l_DD7m-_p=M>zyJVSpj zl4KpHdxyE+9wze#cgDXL6aAi?idz{!DGlff0Ws+8uaA$l`t89~>OviyX_1$*$Zz2L zV%1j1aky_(5pNnEN7ohZnCqFt8SX1ML&@r| znLvk7InNA>XGt7}mrkrI=>dzc8&r*>+X@%3_(lX*Y9;d%SmJklZtYF;r(v{S*z--L z_<3Ugl2717#|r0NYcHpAo)SoZdMGUFHcAWBkRzJ>Hd*@ zRaua3S9IGfb6fGnY@Z^X*3*xJ&*-v^#!mv=lW4Ff;SSEkWT}zh?x?9yW-b0S!26i3 zR@z?1%d%SjKMSE3@sR#GFg}K^?KY-Uh4e21IkW_5G-K$O_MwsF5fv%oQ!e<#=A>T* z&=)V_q<#&|(@1p!IbLOx)J6nRk-AxyVm{8!D`UMLpxby|{{pwbGfPQ1V2gBiNhq{6xTg#%^KhBylv{6#NI(G{W-PHjS^Y ze44QEoNS|I0>q~wG71fHap-v$AbvG?7(qjr3y`pY5`;zwa{&@oQ44CqT!4gi)WeRZ zw~D1o{7m*GoMEdjRa6>&^$^wf&le&SWog#ge7eJCyquXDO|{hrLR+H}tFAPgx9Z+$ zwWtz-hiHWhm1KM@GTWboCAH1n@Y$5p1;8IGisEg@*g`X2biEmbZ(e z|8F+T8V!@@730h*T(F(0w>)9;^th^!R=J7nOTz@kg*~sP*spH0;TB9=cmHJ*XWQxt z_Z?=o_|xp}!+nRB;*3>y_l=C%Vk=6QPg`JNu8c3RFimn~-@3W+5 zM}~-X*s;9_;kMpPM63WKTx%l>UN?;py1TAcPK z@sEM^;e1*0|Mm&>RyCm{ImN7&C4Tf^_j0Mv4|23u;_dY{`)qVxYBBHa6(H^X?Jz8I57!EIU%^pf|dW zfW#KedqSSfG(f{QnxHf*I7A7h<%DOWnM`#Q0A2gC)EvK1K#CV)zs|cX?K0J6S(oW9 z8#@6<96te_?VRnfIaIvEa&gM4XPpg)>h~EUn(3J=Sz0J2VLQn)`7tLW*$F)?(?1ADA9;yEEuA%cRRT8(~MH>ghWDx!`IqlZ)ew=M;Eu z5}RzRHy8}I(!k)JarA@h#y&oRgRkz29KU6Zgw|NNWiKsGOq_WnRK}P*QNTeyz5IC^ z&dZRWmR4Z!vNS`MWmRqxzEE;dm<>!?gJB z;<7X7y^*p_*6ENg_|$7B|C>1IvH{+74VU1(eGvK^OON!>z_vitv;%e(_g)SDqCAO& zXX{zkB#A!qj(V44WRHBjl$l2E5CLb3 z;->^cT0>f#t$^@r&n9ha@*o~EKsKL(p_J5EIqZ7dnhqq7FMWj|@S1GC@y5kh;ZlUP z?qk&sK7xcH57$irD}F diff --git a/clients/unity/simple_sample/Library/metadata/c7/c7e34aa4b4a41d1478337506ce720e18 b/clients/unity/simple_sample/Library/metadata/c7/c7e34aa4b4a41d1478337506ce720e18 deleted file mode 100644 index 8f8109e777098e6b2b9b175c3eef0b003e1a6b17..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4276 zcmeHK%Wl&^6upJEKzYC45ZJIQ^Z{alsut3g78N2&#R8#rT2B)r$BAsWP{bmv_zf0( z2*1D|@Bw@S;hsA)>9p7p8>obGCC6jW@qL^*b7Km&5D z-EQya>;8VCsWjEug3eS~Wr`lER1?p(1w9GeS>agIPv;XYdt%nIbR zK^4NRK+fdA7J`|^MnbNVa>$F3$?iF8(Qfx3hZkE-9qBZceO3>~OEs0&1bvQYfskV| zUohu+9_DZuqv-qFin)M$Y(8X@_h}=cNUiE9m0%YQNKn)==-mpwms}c_xfBw^iifw@Tn(cAeNa_brP976ydFNlGUEb|%c2PPnrOO@8a_mWAIto%g&f z{NCwsRx$PEPHRH_Fv+!L&b#%A?rCb_^JKn0^ZMsb&G-$|a7Q%ARF!#6Hll2<-fSdH zN3j$@kZn9YDTpBdq7=UVYbkW3xs>Wenl@V6-u`p4;AGP~xvuavUgB_|8Q>aC7c$0C zx^Z)`#n&Z1(BW|Otj9o)fgS@r2L5{nK1_U>e=`4V>eJZEl^?ghf5a!9eD9~X7gTdr j$6Xk3A7fo0U8mf8oDah5feXy9o|~b5E9uC;E6@D`hUmb# diff --git a/clients/unity/simple_sample/Library/metadata/d4/d420514133a0fbd4990025b3e1dac764 b/clients/unity/simple_sample/Library/metadata/d4/d420514133a0fbd4990025b3e1dac764 deleted file mode 100644 index ad05c2509ff2dafdcfef0c53b02ef9b7ffdb6b92..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 50876 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 KWB7g$g8vJ@_iRr9 diff --git a/clients/unity/simple_sample/Library/metadata/e4/e4195866782d0214cb59abbae44f068f b/clients/unity/simple_sample/Library/metadata/e4/e4195866782d0214cb59abbae44f068f deleted file mode 100644 index ed727e04d3bbf294d0cee56cc2026e19ffc54f6e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4288 zcmeHK%Wl&^6upJEKzYC45D@D^A0QS8wKOes(GspxE;9FR*BHVLlCY=@=u>mBMD>)u}j_+&E9LGdMLqtbD5Yaw9^NDDDcx3oyeT2Su zI-T8o-QQ0%nPobk)48guT+uz1Y2w+A;Q41425s>{OS4HnHcIjG!3?#m|@@Darbs2E%$2XpcBP0fMPB8XiBL;@2VP&vU0~;`? zQrMV*4Hm$%JPnfut*N{@uVT}dJwC2&qEDu&+9dOf*6n4C>q6gzY2l)2T^7F7QY0^l zn8V>>wW(4TGd~Cb8jDw7E z!OO}xw!MtQ=4RIuE`=5@rnXWPsv$2%F1zQXMZ4XD93E}1=}2dp?6Wu+uQXNG6!a;c1wxLA zV#1u}d6>gtjG}LEG3E^JvH6e<-lwgUBDJEUOoE*?AVE>vpm#F(obQD(C}Sss&+|PP zqB*m46Aoi1T(A>@X&1-3$QYM#8O<(veq6lmG`n1YKznYDlY+o4au@W1t`jzA#RJ%_iUw=51=7!VF8DVg|NnQ+H+%E}^b@}=`vS@_!NyccER zYp26m#>C5AX+r%l$+d0HJNXIqG_~+~qL`mW`njDmzF?Z(5e;&ys=OxaQ9c{5wNh?J zITg?#D?B|a2qFI<6+ZuMDs-v2l<8DN86b?tvdL8I>px1$32mbpG%)fnAfBmI0`RU!q_w!$$e#5tpeD7!17j)dp n^;8t%!<-}trma8|k<^mLD^dYm{2 zX(TS3kT}7=;J_b&1DyF6hy$4SYUz31t`0;ZH%imf%Y6ObSFhey!`R%9jGg$IF?N)( zxu4+77CQ@__xlU%ul@b~!*H+RxRz)6W~}6>V3)WS41U^2ERG}iHDPQPPFw3)aqcV| zZr|vACgS3XOvGBsceDW=LLdx0`|FL3LS0x*WRa`YJB7%!%(EqUe?y5r?`?1;vck$@ zkHKpX;rlSGh(qRn)9YN5saWqCRmdBM$KiE}+u+5(;SBd0&QP-Yr%XVHP#I4Ri-%Dh z3@;s7mC^}|M+|C;!`l)^SUeiQ=|ahD2P|=&53Rj%{y2=*i9KIbitjP|jcWpn=vcvd z+1kr#)bg${wwVD84$IzN#{;fd!V7Mm9 z;>Iu3aCjSX;}-+Citgd|Iw&`~Um{q%Y|{NQ!J&08~1%Uo7`H0YwI zV?4b|Uc<{K8m|%Dy=X-D!mZvB@wk8lcS9vYnOHnY@ZM+3NLxv{)@At5Q|Kh@(ys%? z`_SBSWjduxzd__+2;ivt(3|$5k>n92DdeL^JhnOMEdo7036pvoF#klVMdWyuRZ{H$ zq9k=uYccGld!@17A?PMv@BRy3r-+;|uhRiUFV9m*P3zjaoXePKgAPICJ&q$#gm41I zHBoTmnFmTNx+RuaOz-zyVlQt&vD+ETgrSESQE)D`Peo$>|Kz<-4-`;9nBg=V*n)-8 z`Wb?qwJ=&RL$GreM(d@Axiua^%`R7$)=M-C&ZVACF}m@&IhMnrfab*Ead=(zx=^ij zX2_M?k!^oaOV;wSVtyuF35#K?E>=_=K6;Sq zt-X;*h1Mp{hRI?y;Cf(cG}cz{2u+PjsJh~8KA84S^`eRdcA*u{6-#+fq_#hyCADek zv7CBBh{0*pd%1cU1&DVy3{x{PT0)z2VfpmBnkG+cC1P<@qa{=&(LCoD8B{V+Y=RX8 zbZVybMn-^D>n_ZMrraqWEQh@7uZfsw>&g? zdR$pZ%iM(a#bKOcV$byy``|VkE?}Cv`}<9tP0>U59cH%hRqgKSzQap##+r8bm5kY7 zD@>RF6ks%0h69YINsp*>xumH6_o;!ZJE;%s+`NxvDOITOK6RB6`q(+^P%ZA3~J-_k;v?2o&*O8%UL-5m3$H%?P- z3~fKExiOSIK`=Y)q~mo02X=#a;PU|-*nwhN#N)TUAK3SBFTp?>&UhRg-~6)p``6!o zb?LkI^)~yp^Cvoj=`Zz}TTmKpH`dTMgWez1AqhAV+T+kpB$f9 zE5r9rr?VHY2L}OWw3cQ;8c`8Oz+Isw;B1HS__K!wZT11n^O>2NgtYc(WnHeC2XQ3l z5>eNHZeW0bXw>`h{pI-z)LU`H@!3@{OHVnM5ypNt@thq|Vr1S4jYHTC3!|sWieQr# zw$GvpVN(`1lmpX7#aSITglRk!sV&R?5ZAWRXOt3KV1KD}!-(-!7?`#tT(qUr@hi!T z#4Ta-IJ#JE2nAFLei}EAEkw97G*w)WGm+eDh^#Jg``G2d-~l%Tw*>#d_A(BI*mnLh z4kN|~FIvWtzz<=`x|ea(-rV*?mrM(vQ&lLL877D&sf|jw0)iZ;IW!-T#yJEzLHE&$ zV2&UsEvgXa2y!Y1wh+xVTMGP2Dlu+`;nOqf(EjvL4oh1bGLc&IIZLB*sUdWO(Wh~i z5ZtEo33CSL$vlq6wCGzqj2WYQXdz@1&uLRZB35LgIoMeXVidG3x|hM{LNAD+W%M%m zJl-RtXx<#%n8S1uF1QKCwDV(KM2ye4h-Q}pKR#YJ%`WF4s602zAV}aAu?q6BTmw3s zr2y=PFoa~Q$TiVQ%zV1hR7R@ZV(8aFqT(3$`(jwF8g+X%iZPSfmqunfZf18-OsfjR zuGnK>g_V;G)p7tU6zoA-n~M{P(n<#;luN>qxxGT)s9g?6STaI*9H(UC?_`2ilM2;^ zvk2w$XIX^$>AmM=5$dPMIo71LZF!!*iYwkG*3gjc@v7JtsQvL zOl!+pDn6~m<$o)g!?=A^p2#s|*Z(vp-|o`PJ~jD({6T7By{YbhkD3^a54@*pgxB;E zM~#G_fsI6$)Qno`%GIGacwNFq6r$F*eg*m!=vSa$f&ab&pWZ+HdTssN?Ax&~qaQxL zenOu_{JpQQFB+lDcq@y|R&g2p2U#)V*E9ZIE=1B>B`1JAzJ6}T@&%{GFI#x;2O(C( A0{{R3 diff --git a/clients/unity/simple_sample/Library/metadata/f9/f9efc5e870ab48243b2f508f00b7a740 b/clients/unity/simple_sample/Library/metadata/f9/f9efc5e870ab48243b2f508f00b7a740 deleted file mode 100644 index 341b7bf6ac0f77439fbcc01820fb2d3b1157ee12..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4276 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 diff --git a/clients/unity/simple_sample/Library/metadata/fd/fd22bd16464e8784cbd88809cdc697a3 b/clients/unity/simple_sample/Library/metadata/fd/fd22bd16464e8784cbd88809cdc697a3 deleted file mode 100644 index 8a2545887317598ade326e985f63867126430130..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4276 zcmeHK%Wl&^6upJEKzYC45c&ayK0pW|)Iu8CMIi#ZLa0pZX<~4k%63c3%1bs#d;%ZB zg8u-C4c|ey=gv$zEq25PkWjAVc;raD{DnX0Nx(S4O_;@OVi`DYIXx%i;P`8b=Lpw`mkX3-Rxnj*su zIm`1fhr<{}-`-ZtIoxCOAsf6;+X+Q#Sx2b^J8wXOqTHZ&EBJ!%g)t~&w}LP7Js6@n zvvLy+V<%j)6N1T$V_jy9%eYKtS3Ey1-cFfaEkJ;tTT`Ua;GQxI`iWj8Y|e@YwnG|X zv0-}zrnmjt2we@HD1W~Z*6UevcQyz)i`mUg$7$G(?{OooCwf&an=N1iBSF7Y4lp|& z|E;B37-?>+$ir`yz`^V~v2X5M76&X02#1rDO#JOkm@%DjXAzqG*4Zlyzjr$CMOpa0 z)8VXQT1(y5g!*BUYi`cF^@;9jYT@&Au|A9X=T6P|4byN(G|W_0c}>=%Y`(SDPMD5z zDS#l`c=}QhLH7!MFeb diff --git a/clients/unity/simple_sample/Library/metadata/ff/ff990239cc3bc4a45a362f932463d378 b/clients/unity/simple_sample/Library/metadata/ff/ff990239cc3bc4a45a362f932463d378 deleted file mode 100644 index 408ad7419b305662b6258df4a6dbd9ce828c3b28..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 771444 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 diff --git a/clients/unity/simple_sample/Library/metadata/ff/ffba25341839373409b0cd511e9b1761 b/clients/unity/simple_sample/Library/metadata/ff/ffba25341839373409b0cd511e9b1761 deleted file mode 100644 index 3857ba0bebaa29e13f22b8ac06bf91ce85d799b0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 724664 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 diff --git a/clients/unity/simple_sample/ProjectSettings/AudioManager.asset b/clients/unity/simple_sample/ProjectSettings/AudioManager.asset deleted file mode 100644 index ec6be29c6..000000000 --- a/clients/unity/simple_sample/ProjectSettings/AudioManager.asset +++ /dev/null @@ -1,12 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!11 &1 -AudioManager: - m_ObjectHideFlags: 0 - m_Volume: 1 - Rolloff Scale: 1 - m_SpeedOfSound: 347 - Doppler Factor: 1 - Default Speaker Mode: 2 - m_DSPBufferSize: 0 - m_DisableAudio: 0 diff --git a/clients/unity/simple_sample/ProjectSettings/DynamicsManager.asset b/clients/unity/simple_sample/ProjectSettings/DynamicsManager.asset deleted file mode 100644 index 717b5c27a..000000000 --- a/clients/unity/simple_sample/ProjectSettings/DynamicsManager.asset +++ /dev/null @@ -1,15 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!55 &1 -PhysicsManager: - m_ObjectHideFlags: 0 - m_Gravity: {x: 0, y: -9.81000042, z: 0} - m_DefaultMaterial: {fileID: 0} - m_BounceThreshold: 2 - m_SleepVelocity: .150000006 - m_SleepAngularVelocity: .140000001 - m_MaxAngularVelocity: 7 - m_MinPenetrationForPenalty: .00999999978 - m_SolverIterationCount: 6 - m_RaycastsHitTriggers: 1 - m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff diff --git a/clients/unity/simple_sample/ProjectSettings/EditorBuildSettings.asset b/clients/unity/simple_sample/ProjectSettings/EditorBuildSettings.asset deleted file mode 100644 index 6dc24f7df..000000000 --- a/clients/unity/simple_sample/ProjectSettings/EditorBuildSettings.asset +++ /dev/null @@ -1,7 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!1045 &1 -EditorBuildSettings: - m_ObjectHideFlags: 0 - serializedVersion: 2 - m_Scenes: [] diff --git a/clients/unity/simple_sample/ProjectSettings/EditorSettings.asset b/clients/unity/simple_sample/ProjectSettings/EditorSettings.asset deleted file mode 100644 index 63cabb583..000000000 --- a/clients/unity/simple_sample/ProjectSettings/EditorSettings.asset +++ /dev/null @@ -1,10 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!159 &1 -EditorSettings: - m_ObjectHideFlags: 0 - serializedVersion: 2 - m_ExternalVersionControlSupport: Meta Files - m_SerializationMode: 2 - m_WebSecurityEmulationEnabled: 0 - m_WebSecurityEmulationHostUrl: http://www.mydomain.com/mygame.unity3d diff --git a/clients/unity/simple_sample/ProjectSettings/GraphicsSettings.asset b/clients/unity/simple_sample/ProjectSettings/GraphicsSettings.asset deleted file mode 100644 index 553f97d4b..000000000 --- a/clients/unity/simple_sample/ProjectSettings/GraphicsSettings.asset +++ /dev/null @@ -1,7 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!30 &1 -GraphicsSettings: - m_ObjectHideFlags: 0 - m_AlwaysIncludedShaders: - - {fileID: 7, guid: 0000000000000000f000000000000000, type: 0} diff --git a/clients/unity/simple_sample/ProjectSettings/InputManager.asset b/clients/unity/simple_sample/ProjectSettings/InputManager.asset deleted file mode 100644 index c95d27bd2..000000000 --- a/clients/unity/simple_sample/ProjectSettings/InputManager.asset +++ /dev/null @@ -1,246 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!13 &1 -InputManager: - m_ObjectHideFlags: 0 - m_Axes: - - serializedVersion: 3 - m_Name: Horizontal - descriptiveName: - descriptiveNegativeName: - negativeButton: left - positiveButton: right - altNegativeButton: a - altPositiveButton: d - gravity: 3 - dead: .00100000005 - sensitivity: 3 - snap: 1 - invert: 0 - type: 0 - axis: 0 - joyNum: 0 - - serializedVersion: 3 - m_Name: Vertical - descriptiveName: - descriptiveNegativeName: - negativeButton: down - positiveButton: up - altNegativeButton: s - altPositiveButton: w - gravity: 3 - dead: .00100000005 - sensitivity: 3 - snap: 1 - invert: 0 - type: 0 - axis: 0 - joyNum: 0 - - serializedVersion: 3 - m_Name: Fire1 - descriptiveName: - descriptiveNegativeName: - negativeButton: - positiveButton: left ctrl - altNegativeButton: - altPositiveButton: mouse 0 - gravity: 1000 - dead: .00100000005 - sensitivity: 1000 - snap: 0 - invert: 0 - type: 0 - axis: 0 - joyNum: 0 - - serializedVersion: 3 - m_Name: Fire2 - descriptiveName: - descriptiveNegativeName: - negativeButton: - positiveButton: left alt - altNegativeButton: - altPositiveButton: mouse 1 - gravity: 1000 - dead: .00100000005 - sensitivity: 1000 - snap: 0 - invert: 0 - type: 0 - axis: 0 - joyNum: 0 - - serializedVersion: 3 - m_Name: Fire3 - descriptiveName: - descriptiveNegativeName: - negativeButton: - positiveButton: left cmd - altNegativeButton: - altPositiveButton: mouse 2 - gravity: 1000 - dead: .00100000005 - sensitivity: 1000 - snap: 0 - invert: 0 - type: 0 - axis: 0 - joyNum: 0 - - serializedVersion: 3 - m_Name: Jump - descriptiveName: - descriptiveNegativeName: - negativeButton: - positiveButton: space - altNegativeButton: - altPositiveButton: - gravity: 1000 - dead: .00100000005 - sensitivity: 1000 - snap: 0 - invert: 0 - type: 0 - axis: 0 - joyNum: 0 - - serializedVersion: 3 - m_Name: Mouse X - descriptiveName: - descriptiveNegativeName: - negativeButton: - positiveButton: - altNegativeButton: - altPositiveButton: - gravity: 0 - dead: 0 - sensitivity: .100000001 - snap: 0 - invert: 0 - type: 1 - axis: 0 - joyNum: 0 - - serializedVersion: 3 - m_Name: Mouse Y - descriptiveName: - descriptiveNegativeName: - negativeButton: - positiveButton: - altNegativeButton: - altPositiveButton: - gravity: 0 - dead: 0 - sensitivity: .100000001 - snap: 0 - invert: 0 - type: 1 - axis: 1 - joyNum: 0 - - serializedVersion: 3 - m_Name: Mouse ScrollWheel - descriptiveName: - descriptiveNegativeName: - negativeButton: - positiveButton: - altNegativeButton: - altPositiveButton: - gravity: 0 - dead: 0 - sensitivity: .100000001 - snap: 0 - invert: 0 - type: 1 - axis: 2 - joyNum: 0 - - serializedVersion: 3 - m_Name: Horizontal - descriptiveName: - descriptiveNegativeName: - negativeButton: - positiveButton: - altNegativeButton: - altPositiveButton: - gravity: 0 - dead: .189999998 - sensitivity: 1 - snap: 0 - invert: 0 - type: 2 - axis: 0 - joyNum: 0 - - serializedVersion: 3 - m_Name: Vertical - descriptiveName: - descriptiveNegativeName: - negativeButton: - positiveButton: - altNegativeButton: - altPositiveButton: - gravity: 0 - dead: .189999998 - sensitivity: 1 - snap: 0 - invert: 1 - type: 2 - axis: 1 - joyNum: 0 - - serializedVersion: 3 - m_Name: Fire1 - descriptiveName: - descriptiveNegativeName: - negativeButton: - positiveButton: joystick button 0 - altNegativeButton: - altPositiveButton: - gravity: 1000 - dead: .00100000005 - sensitivity: 1000 - snap: 0 - invert: 0 - type: 0 - axis: 0 - joyNum: 0 - - serializedVersion: 3 - m_Name: Fire2 - descriptiveName: - descriptiveNegativeName: - negativeButton: - positiveButton: joystick button 1 - altNegativeButton: - altPositiveButton: - gravity: 1000 - dead: .00100000005 - sensitivity: 1000 - snap: 0 - invert: 0 - type: 0 - axis: 0 - joyNum: 0 - - serializedVersion: 3 - m_Name: Fire3 - descriptiveName: - descriptiveNegativeName: - negativeButton: - positiveButton: joystick button 2 - altNegativeButton: - altPositiveButton: - gravity: 1000 - dead: .00100000005 - sensitivity: 1000 - snap: 0 - invert: 0 - type: 0 - axis: 0 - joyNum: 0 - - serializedVersion: 3 - m_Name: Jump - descriptiveName: - descriptiveNegativeName: - negativeButton: - positiveButton: joystick button 3 - altNegativeButton: - altPositiveButton: - gravity: 1000 - dead: .00100000005 - sensitivity: 1000 - snap: 0 - invert: 0 - type: 0 - axis: 0 - joyNum: 0 diff --git a/clients/unity/simple_sample/ProjectSettings/NavMeshLayers.asset b/clients/unity/simple_sample/ProjectSettings/NavMeshLayers.asset deleted file mode 100644 index 79cb3ae98..000000000 --- a/clients/unity/simple_sample/ProjectSettings/NavMeshLayers.asset +++ /dev/null @@ -1,133 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!126 &1 -NavMeshLayers: - m_ObjectHideFlags: 0 - Built-in Layer 0: - name: Default - cost: 1 - editType: 2 - Built-in Layer 1: - name: Not Walkable - cost: 1 - editType: 0 - Built-in Layer 2: - name: Jump - cost: 2 - editType: 2 - User Layer 0: - name: - cost: 1 - editType: 3 - User Layer 1: - name: - cost: 1 - editType: 3 - User Layer 2: - name: - cost: 1 - editType: 3 - User Layer 3: - name: - cost: 1 - editType: 3 - User Layer 4: - name: - cost: 1 - editType: 3 - User Layer 5: - name: - cost: 1 - editType: 3 - User Layer 6: - name: - cost: 1 - editType: 3 - User Layer 7: - name: - cost: 1 - editType: 3 - User Layer 8: - name: - cost: 1 - editType: 3 - User Layer 9: - name: - cost: 1 - editType: 3 - User Layer 10: - name: - cost: 1 - editType: 3 - User Layer 11: - name: - cost: 1 - editType: 3 - User Layer 12: - name: - cost: 1 - editType: 3 - User Layer 13: - name: - cost: 1 - editType: 3 - User Layer 14: - name: - cost: 1 - editType: 3 - User Layer 15: - name: - cost: 1 - editType: 3 - User Layer 16: - name: - cost: 1 - editType: 3 - User Layer 17: - name: - cost: 1 - editType: 3 - User Layer 18: - name: - cost: 1 - editType: 3 - User Layer 19: - name: - cost: 1 - editType: 3 - User Layer 20: - name: - cost: 1 - editType: 3 - User Layer 21: - name: - cost: 1 - editType: 3 - User Layer 22: - name: - cost: 1 - editType: 3 - User Layer 23: - name: - cost: 1 - editType: 3 - User Layer 24: - name: - cost: 1 - editType: 3 - User Layer 25: - name: - cost: 1 - editType: 3 - User Layer 26: - name: - cost: 1 - editType: 3 - User Layer 27: - name: - cost: 1 - editType: 3 - User Layer 28: - name: - cost: 1 - editType: 3 diff --git a/clients/unity/simple_sample/ProjectSettings/NetworkManager.asset b/clients/unity/simple_sample/ProjectSettings/NetworkManager.asset deleted file mode 100644 index 5dc6a831d..000000000 --- a/clients/unity/simple_sample/ProjectSettings/NetworkManager.asset +++ /dev/null @@ -1,8 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!149 &1 -NetworkManager: - m_ObjectHideFlags: 0 - m_DebugLevel: 0 - m_Sendrate: 15 - m_AssetToPrefab: {} diff --git a/clients/unity/simple_sample/ProjectSettings/ProjectSettings.asset b/clients/unity/simple_sample/ProjectSettings/ProjectSettings.asset deleted file mode 100644 index 941fe42d6..000000000 --- a/clients/unity/simple_sample/ProjectSettings/ProjectSettings.asset +++ /dev/null @@ -1,205 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!129 &1 -PlayerSettings: - m_ObjectHideFlags: 0 - serializedVersion: 2 - AndroidProfiler: 0 - defaultScreenOrientation: 0 - targetDevice: 2 - targetGlesGraphics: 1 - targetResolution: 0 - accelerometerFrequency: 60 - companyName: DefaultCompany - productName: simple_sample - defaultCursor: {fileID: 0} - cursorHotspot: {x: 0, y: 0} - defaultScreenWidth: 1024 - defaultScreenHeight: 768 - defaultScreenWidthWeb: 960 - defaultScreenHeightWeb: 600 - m_RenderingPath: 1 - m_ActiveColorSpace: 0 - m_MTRendering: 1 - m_UseDX11: 0 - iosShowActivityIndicatorOnLoading: -1 - androidShowActivityIndicatorOnLoading: -1 - displayResolutionDialog: 1 - allowedAutorotateToPortrait: 1 - allowedAutorotateToPortraitUpsideDown: 1 - allowedAutorotateToLandscapeRight: 1 - allowedAutorotateToLandscapeLeft: 1 - useOSAutorotation: 1 - use32BitDisplayBuffer: 1 - use24BitDepthBuffer: 0 - defaultIsFullScreen: 0 - defaultIsNativeResolution: 1 - runInBackground: 0 - captureSingleScreen: 0 - Override IPod Music: 0 - Prepare IOS For Recording: 0 - enableHWStatistics: 1 - usePlayerLog: 1 - stripPhysics: 0 - forceSingleInstance: 0 - resizableWindow: 0 - useMacAppStoreValidation: 0 - gpuSkinning: 1 - xboxEnableAvatar: 0 - xboxEnableKinect: 0 - xboxEnableKinectAutoTracking: 0 - xboxEnableFitness: 0 - macFullscreenMode: 2 - xboxSpeechDB: 0 - xboxEnableHeadOrientation: 0 - wiiHio2Usage: -1 - wiiLoadingScreenRectPlacement: 0 - wiiLoadingScreenBackground: {r: 1, g: 1, b: 1, a: 1} - wiiLoadingScreenPeriod: 1000 - wiiLoadingScreenFileName: - wiiLoadingScreenRect: - serializedVersion: 2 - x: 0 - y: 0 - width: 0 - height: 0 - m_SupportedAspectRatios: - 4:3: 1 - 5:4: 1 - 16:10: 1 - 16:9: 1 - Others: 1 - iPhoneBundleIdentifier: com.Company.ProductName - productGUID: f7b388f2ff8d5f9428acfb790895bdce - iPhoneBundleVersion: 1.0 - AndroidBundleVersionCode: 1 - AndroidMinSdkVersion: 6 - AndroidPreferredInstallLocation: 1 - aotOptions: - apiCompatibilityLevel: 2 - iPhoneStrippingLevel: 0 - iPhoneScriptCallOptimization: 0 - ForceInternetPermission: 0 - ForceSDCardPermission: 0 - CreateWallpaper: 0 - APKExpansionFiles: 0 - StripUnusedMeshComponents: 0 - iPhoneSdkVersion: 988 - iPhoneTargetOSVersion: 10 - uIPrerenderedIcon: 0 - uIRequiresPersistentWiFi: 0 - uIStatusBarHidden: 1 - uIExitOnSuspend: 0 - uIStatusBarStyle: 0 - iPhoneSplashScreen: {fileID: 0} - iPhoneHighResSplashScreen: {fileID: 0} - iPhoneTallHighResSplashScreen: {fileID: 0} - iPadPortraitSplashScreen: {fileID: 0} - iPadHighResPortraitSplashScreen: {fileID: 0} - iPadLandscapeSplashScreen: {fileID: 0} - iPadHighResLandscapeSplashScreen: {fileID: 0} - AndroidTargetDevice: 0 - AndroidSplashScreenScale: 0 - AndroidKeystoreName: - AndroidKeyaliasName: - resolutionDialogBanner: {fileID: 0} - m_BuildTargetIcons: - - m_BuildTarget: - m_Icons: - - m_Icon: {fileID: 0} - m_Size: 128 - m_BuildTargetBatching: [] - webPlayerTemplate: APPLICATION:Default - m_TemplateCustomTags: {} - wiiRegion: 1 - wiiGameCode: RABA - wiiGameVersion: - wiiCompanyCode: ZZ - wiiSupportsNunchuk: 0 - wiiSupportsClassicController: 0 - wiiSupportsBalanceBoard: 0 - wiiSupportsMotionPlus: 0 - wiiControllerCount: 1 - wiiFloatingPointExceptions: 0 - wiiScreenCrashDumps: 1 - XboxTitleId: - XboxImageXexPath: - XboxSpaPath: - XboxGenerateSpa: 0 - XboxDeployKinectResources: 0 - XboxSplashScreen: {fileID: 0} - xboxEnableSpeech: 0 - xboxAdditionalTitleMemorySize: 0 - xboxDeployKinectHeadOrientation: 0 - xboxDeployKinectHeadPosition: 0 - ps3TitleConfigPath: - ps3DLCConfigPath: - ps3ThumbnailPath: - ps3BackgroundPath: - ps3SoundPath: - ps3TrophyCommId: - ps3NpCommunicationPassphrase: - ps3TrophyPackagePath: - ps3BootCheckMaxSaveGameSizeKB: 128 - ps3TrophyCommSig: - ps3SaveGameSlots: 1 - ps3TrialMode: 0 - flashStrippingLevel: 2 - scriptingDefineSymbols: - data: - first: 1 - second: - data: - first: 4 - second: - data: - first: 7 - second: - data: - first: 11 - second: - metroPackageName: simple_sample - metroPackageLogo: - metroPackageVersion: - metroCertificatePath: - metroCertificatePassword: - metroCertificateSubject: - metroCertificateIssuer: - metroCertificateNotAfter: 0000000000000000 - metroApplicationDescription: simple_sample - metroTileLogo: - metroTileWideLogo: - metroTileSmallLogo: - metroTileShortName: - metroCommandLineArgsFile: - metroTileShowName: 0 - metroTileForegroundText: 1 - metroTileBackgroundColor: {r: 0, g: 0, b: 0, a: 1} - metroSplashScreenImage: - metroSplashScreenBackgroundColor: {r: 0, g: 0, b: 0, a: 1} - metroSplashScreenUseBackgroundColor: 0 - metroCapabilities: {} - metroCompilationOverrides: 1 - blackberryDeviceAddress: - blackberryDevicePassword: - blackberryTokenPath: - blackberryTokenExires: - blackberryTokenAuthor: - blackberryTokenAuthorId: - blackberryAuthorId: - blackberryCskPassword: - blackberrySaveLogPath: - blackberryAuthorIdOveride: 0 - blackberrySharedPermissions: 0 - blackberryCameraPermissions: 0 - blackberryGPSPermissions: 0 - blackberryDeviceIDPermissions: 0 - blackberryMicrophonePermissions: 0 - blackberryBuildId: 0 - blackberryLandscapeSplashScreen: {fileID: 0} - blackberryPortraitSplashScreen: {fileID: 0} - blackberrySquareSplashScreen: {fileID: 0} - firstStreamedLevelWithResources: 0 - unityRebuildLibraryVersion: 9 - unityForwardCompatibleVersion: 38 - unityStandardAssetsVersion: 0 diff --git a/clients/unity/simple_sample/ProjectSettings/QualitySettings.asset b/clients/unity/simple_sample/ProjectSettings/QualitySettings.asset deleted file mode 100644 index 25675a267..000000000 --- a/clients/unity/simple_sample/ProjectSettings/QualitySettings.asset +++ /dev/null @@ -1,135 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!47 &1 -QualitySettings: - m_ObjectHideFlags: 0 - serializedVersion: 5 - m_CurrentQuality: 3 - m_QualitySettings: - - serializedVersion: 2 - name: Fastest - pixelLightCount: 0 - shadows: 0 - shadowResolution: 0 - shadowProjection: 1 - shadowCascades: 1 - shadowDistance: 15 - blendWeights: 1 - textureQuality: 1 - anisotropicTextures: 0 - antiAliasing: 0 - softParticles: 0 - softVegetation: 0 - vSyncCount: 0 - lodBias: .300000012 - maximumLODLevel: 0 - particleRaycastBudget: 4 - excludedTargetPlatforms: [] - - serializedVersion: 2 - name: Fast - pixelLightCount: 0 - shadows: 0 - shadowResolution: 0 - shadowProjection: 1 - shadowCascades: 1 - shadowDistance: 20 - blendWeights: 2 - textureQuality: 0 - anisotropicTextures: 0 - antiAliasing: 0 - softParticles: 0 - softVegetation: 0 - vSyncCount: 0 - lodBias: .400000006 - maximumLODLevel: 0 - particleRaycastBudget: 16 - excludedTargetPlatforms: [] - - serializedVersion: 2 - name: Simple - pixelLightCount: 1 - shadows: 1 - shadowResolution: 0 - shadowProjection: 1 - shadowCascades: 1 - shadowDistance: 20 - blendWeights: 2 - textureQuality: 0 - anisotropicTextures: 1 - antiAliasing: 0 - softParticles: 0 - softVegetation: 0 - vSyncCount: 0 - lodBias: .699999988 - maximumLODLevel: 0 - particleRaycastBudget: 64 - excludedTargetPlatforms: [] - - serializedVersion: 2 - name: Good - pixelLightCount: 2 - shadows: 2 - shadowResolution: 1 - shadowProjection: 1 - shadowCascades: 2 - shadowDistance: 40 - blendWeights: 2 - textureQuality: 0 - anisotropicTextures: 1 - antiAliasing: 0 - softParticles: 0 - softVegetation: 1 - vSyncCount: 1 - lodBias: 1 - maximumLODLevel: 0 - particleRaycastBudget: 256 - excludedTargetPlatforms: [] - - serializedVersion: 2 - name: Beautiful - pixelLightCount: 3 - shadows: 2 - shadowResolution: 2 - shadowProjection: 1 - shadowCascades: 2 - shadowDistance: 70 - blendWeights: 4 - textureQuality: 0 - anisotropicTextures: 2 - antiAliasing: 2 - softParticles: 1 - softVegetation: 1 - vSyncCount: 1 - lodBias: 1.5 - maximumLODLevel: 0 - particleRaycastBudget: 1024 - excludedTargetPlatforms: [] - - serializedVersion: 2 - name: Fantastic - pixelLightCount: 4 - shadows: 2 - shadowResolution: 2 - shadowProjection: 1 - shadowCascades: 4 - shadowDistance: 150 - blendWeights: 4 - textureQuality: 0 - anisotropicTextures: 2 - antiAliasing: 2 - softParticles: 1 - softVegetation: 1 - vSyncCount: 1 - lodBias: 2 - maximumLODLevel: 0 - particleRaycastBudget: 4096 - excludedTargetPlatforms: [] - m_PerPlatformDefaultQuality: - Android: 2 - BlackBerry: 0 - FlashPlayer: 3 - GLES Emulation: 3 - PS3: 3 - Standalone: 3 - WP8: 0 - Web: 3 - Wii: 3 - Windows Store Apps: 0 - XBOX360: 3 - iPhone: 2 diff --git a/clients/unity/simple_sample/ProjectSettings/TagManager.asset b/clients/unity/simple_sample/ProjectSettings/TagManager.asset deleted file mode 100644 index ac1fdfebf..000000000 --- a/clients/unity/simple_sample/ProjectSettings/TagManager.asset +++ /dev/null @@ -1,38 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!78 &1 -TagManager: - tags: - - - Builtin Layer 0: Default - Builtin Layer 1: TransparentFX - Builtin Layer 2: Ignore Raycast - Builtin Layer 3: - Builtin Layer 4: Water - Builtin Layer 5: - Builtin Layer 6: - Builtin Layer 7: - User Layer 8: - User Layer 9: - User Layer 10: - User Layer 11: - User Layer 12: - User Layer 13: - User Layer 14: - User Layer 15: - User Layer 16: - User Layer 17: - User Layer 18: - User Layer 19: - User Layer 20: - User Layer 21: - User Layer 22: - User Layer 23: - User Layer 24: - User Layer 25: - User Layer 26: - User Layer 27: - User Layer 28: - User Layer 29: - User Layer 30: - User Layer 31: diff --git a/clients/unity/simple_sample/ProjectSettings/TimeManager.asset b/clients/unity/simple_sample/ProjectSettings/TimeManager.asset deleted file mode 100644 index f0e494b67..000000000 --- a/clients/unity/simple_sample/ProjectSettings/TimeManager.asset +++ /dev/null @@ -1,8 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!5 &1 -TimeManager: - m_ObjectHideFlags: 0 - Fixed Timestep: .0199999996 - Maximum Allowed Timestep: .333333343 - m_TimeScale: 1 From d11df5b87fea0c691dc5fad3081f8e621b0ebb42 Mon Sep 17 00:00:00 2001 From: Japa Date: Thu, 11 Dec 2014 20:10:49 +0530 Subject: [PATCH 64/72] Added a simple unit listing to remotefortressreader.cpp. Updated stonesense. --- plugins/proto/RemoteFortressReader.proto | 14 ++++++++++++++ plugins/remotefortressreader.cpp | 20 ++++++++++++++++++++ plugins/stonesense | 2 +- 3 files changed, 35 insertions(+), 1 deletion(-) diff --git a/plugins/proto/RemoteFortressReader.proto b/plugins/proto/RemoteFortressReader.proto index e65345b3e..7f8435e72 100644 --- a/plugins/proto/RemoteFortressReader.proto +++ b/plugins/proto/RemoteFortressReader.proto @@ -132,6 +132,20 @@ message MaterialList{ repeated MaterialDefinition material_list = 1; } +message UnitDefinition +{ + required int32 id = 1; + optional bool isValid = 2; + optional int32 pos_x = 3; + optional int32 pos_y = 4; + optional int32 pos_z = 5; +} + +message UnitList +{ + repeated UnitDefinition creature_list = 1; +} + message BlockRequest { optional int32 blocks_needed = 1; diff --git a/plugins/remotefortressreader.cpp b/plugins/remotefortressreader.cpp index 3ef673119..46330f143 100644 --- a/plugins/remotefortressreader.cpp +++ b/plugins/remotefortressreader.cpp @@ -38,6 +38,8 @@ #include "df/mental_attribute_type.h" #include +#include "df/unit.h" + //DFhack specific headers #include "modules/Maps.h" #include "modules/MapCache.h" @@ -65,6 +67,8 @@ static command_result GetTiletypeList(color_ostream &stream, const EmptyMessage static command_result GetBlockList(color_ostream &stream, const BlockRequest *in, BlockList *out); static command_result GetPlantList(color_ostream &stream, const BlockRequest *in, PlantList *out); static command_result CheckHashes(color_ostream &stream, const EmptyMessage *in); +static command_result GetUnitList(color_ostream &stream, const EmptyMessage *in, UnitList *out); + void CopyBlock(df::map_block * DfBlock, RemoteFortressReader::MapBlock * NetBlock, MapExtras::MapCache * MC); void FindChangedBlocks(); @@ -109,6 +113,7 @@ DFhackCExport RPCService *plugin_rpcconnect(color_ostream &) svc->addFunction("CheckHashes", CheckHashes); svc->addFunction("GetTiletypeList", GetTiletypeList); svc->addFunction("GetPlantList", GetPlantList); + svc->addFunction("GetUnitList", GetUnitList); return svc; } @@ -650,3 +655,18 @@ static command_result GetPlantList(color_ostream &stream, const BlockRequest *in } return CR_OK; } + +static command_result GetUnitList(color_ostream &stream, const EmptyMessage *in, UnitList *out) +{ + auto world = df::global::world; + for (int i = 0; i < world->units.all.size(); i++) + { + auto unit = world->units.all[i]; + auto send_unit = out->add_creature_list(); + send_unit->set_id(unit->id); + send_unit->set_pos_x(unit->pos.x); + send_unit->set_pos_y(unit->pos.y); + send_unit->set_pos_z(unit->pos.z); + } + return CR_OK; +} \ No newline at end of file diff --git a/plugins/stonesense b/plugins/stonesense index 4e2881415..8270ef289 160000 --- a/plugins/stonesense +++ b/plugins/stonesense @@ -1 +1 @@ -Subproject commit 4e288141586c7da504c3c4f0d5d6b4c289aa3614 +Subproject commit 8270ef2892b640a2e5753844a5e917ba96523fbb From 6982de88bdee7da572ba04ad335530a765ad57ec Mon Sep 17 00:00:00 2001 From: Japa Date: Fri, 12 Dec 2014 21:04:23 +0530 Subject: [PATCH 65/72] Added very basic viewport size and position sending. --- plugins/proto/RemoteFortressReader.proto | 12 ++++++++++++ plugins/remotefortressreader.cpp | 20 ++++++++++++++++++++ 2 files changed, 32 insertions(+) diff --git a/plugins/proto/RemoteFortressReader.proto b/plugins/proto/RemoteFortressReader.proto index 7f8435e72..b6aa90e85 100644 --- a/plugins/proto/RemoteFortressReader.proto +++ b/plugins/proto/RemoteFortressReader.proto @@ -175,4 +175,16 @@ message PlantDef message PlantList { repeated PlantDef plant_list = 1; +} + +message ViewInfo +{ + optional int32 view_pos_x = 1; + optional int32 view_pos_y = 2; + optional int32 view_pos_z = 3; + optional int32 view_size_x = 4; + optional int32 view_size_y = 5; + optional int32 cursor_pos_x = 6; + optional int32 cursor_pos_y = 7; + optional int32 cursor_pos_z = 8; } \ No newline at end of file diff --git a/plugins/remotefortressreader.cpp b/plugins/remotefortressreader.cpp index 46330f143..0e1771cb7 100644 --- a/plugins/remotefortressreader.cpp +++ b/plugins/remotefortressreader.cpp @@ -44,6 +44,7 @@ #include "modules/Maps.h" #include "modules/MapCache.h" #include "modules/Materials.h" +#include "modules/Gui.h" #include "TileTypes.h" #include @@ -68,6 +69,7 @@ static command_result GetBlockList(color_ostream &stream, const BlockRequest *in static command_result GetPlantList(color_ostream &stream, const BlockRequest *in, PlantList *out); static command_result CheckHashes(color_ostream &stream, const EmptyMessage *in); static command_result GetUnitList(color_ostream &stream, const EmptyMessage *in, UnitList *out); +static command_result GetViewInfo(color_ostream &stream, const EmptyMessage *in, ViewInfo *out); void CopyBlock(df::map_block * DfBlock, RemoteFortressReader::MapBlock * NetBlock, MapExtras::MapCache * MC); void FindChangedBlocks(); @@ -114,6 +116,7 @@ DFhackCExport RPCService *plugin_rpcconnect(color_ostream &) svc->addFunction("GetTiletypeList", GetTiletypeList); svc->addFunction("GetPlantList", GetPlantList); svc->addFunction("GetUnitList", GetUnitList); + svc->addFunction("GetViewInfo", GetViewInfo); return svc; } @@ -669,4 +672,21 @@ static command_result GetUnitList(color_ostream &stream, const EmptyMessage *in, send_unit->set_pos_z(unit->pos.z); } return CR_OK; +} + +static command_result GetViewInfo(color_ostream &stream, const EmptyMessage *in, ViewInfo *out) +{ + int x, y, z, w, h, cx, cy, cz; + Gui::getWindowSize(w, h); + Gui::getViewCoords(x, y, z); + Gui::getCursorCoords(cx, cy, cz); + out->set_view_pos_x(x); + out->set_view_pos_y(y); + out->set_view_pos_z(z); + out->set_view_size_x(w); + out->set_view_size_y(h); + out->set_cursor_pos_x(x); + out->set_cursor_pos_y(y); + out->set_cursor_pos_z(z); + return CR_OK; } \ No newline at end of file From cc5a78f848905085260e70f642d5c693c0724721 Mon Sep 17 00:00:00 2001 From: Japa Date: Wed, 17 Dec 2014 08:40:29 +0530 Subject: [PATCH 66/72] Added function to get the map size, and fixed a stupid material bug. --- plugins/proto/RemoteFortressReader.proto | 7 +++++++ plugins/remotefortressreader.cpp | 17 +++++++++++++++-- 2 files changed, 22 insertions(+), 2 deletions(-) diff --git a/plugins/proto/RemoteFortressReader.proto b/plugins/proto/RemoteFortressReader.proto index b6aa90e85..3829ecd6e 100644 --- a/plugins/proto/RemoteFortressReader.proto +++ b/plugins/proto/RemoteFortressReader.proto @@ -187,4 +187,11 @@ message ViewInfo optional int32 cursor_pos_x = 6; optional int32 cursor_pos_y = 7; optional int32 cursor_pos_z = 8; +} + +message MapInfo +{ + optional int32 block_size_x = 1; + optional int32 block_size_y = 2; + optional int32 block_size_z = 3; } \ No newline at end of file diff --git a/plugins/remotefortressreader.cpp b/plugins/remotefortressreader.cpp index 0e1771cb7..b458e3501 100644 --- a/plugins/remotefortressreader.cpp +++ b/plugins/remotefortressreader.cpp @@ -70,6 +70,8 @@ static command_result GetPlantList(color_ostream &stream, const BlockRequest *in static command_result CheckHashes(color_ostream &stream, const EmptyMessage *in); static command_result GetUnitList(color_ostream &stream, const EmptyMessage *in, UnitList *out); static command_result GetViewInfo(color_ostream &stream, const EmptyMessage *in, ViewInfo *out); +static command_result GetMapInfo(color_ostream &stream, const EmptyMessage *in, MapInfo *out); + void CopyBlock(df::map_block * DfBlock, RemoteFortressReader::MapBlock * NetBlock, MapExtras::MapCache * MC); void FindChangedBlocks(); @@ -117,6 +119,7 @@ DFhackCExport RPCService *plugin_rpcconnect(color_ostream &) svc->addFunction("GetPlantList", GetPlantList); svc->addFunction("GetUnitList", GetUnitList); svc->addFunction("GetViewInfo", GetViewInfo); + svc->addFunction("GetMapInfo", GetMapInfo); return svc; } @@ -564,8 +567,8 @@ void CopyBlock(df::map_block * DfBlock, RemoteFortressReader::MapBlock * NetBloc df::tiletype tile = DfBlock->tiletype[xx][yy]; NetBlock->add_tiles(tile); RemoteFortressReader::MatPair * material = NetBlock->add_materials(); - material->set_mat_type(block->baseMaterialAt(df::coord2d(xx, yy)).mat_index); - material->set_mat_index(block->baseMaterialAt(df::coord2d(xx, yy)).mat_type); + material->set_mat_type(block->baseMaterialAt(df::coord2d(xx, yy)).mat_type); + material->set_mat_index(block->baseMaterialAt(df::coord2d(xx, yy)).mat_index); } } } @@ -689,4 +692,14 @@ static command_result GetViewInfo(color_ostream &stream, const EmptyMessage *in, out->set_cursor_pos_y(y); out->set_cursor_pos_z(z); return CR_OK; +} + +static command_result GetMapInfo(color_ostream &stream, const EmptyMessage *in, MapInfo *out) +{ + uint32_t size_x, size_y, size_z; + Maps::getSize(size_x, size_y, size_z); + out->set_block_size_x(size_x); + out->set_block_size_y(size_y); + out->set_block_size_z(size_z); + return CR_OK; } \ No newline at end of file From bc58b0a8229493d2ae03403ebf09b9b6ac7d8f98 Mon Sep 17 00:00:00 2001 From: Japa Date: Wed, 17 Dec 2014 19:42:40 +0530 Subject: [PATCH 67/72] Added map location to info. --- plugins/remotefortressreader.cpp | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/plugins/remotefortressreader.cpp b/plugins/remotefortressreader.cpp index b458e3501..5a47561e9 100644 --- a/plugins/remotefortressreader.cpp +++ b/plugins/remotefortressreader.cpp @@ -567,14 +567,18 @@ void CopyBlock(df::map_block * DfBlock, RemoteFortressReader::MapBlock * NetBloc df::tiletype tile = DfBlock->tiletype[xx][yy]; NetBlock->add_tiles(tile); RemoteFortressReader::MatPair * material = NetBlock->add_materials(); - material->set_mat_type(block->baseMaterialAt(df::coord2d(xx, yy)).mat_type); - material->set_mat_index(block->baseMaterialAt(df::coord2d(xx, yy)).mat_index); + material->set_mat_type(block->staticMaterialAt(df::coord2d(xx, yy)).mat_type); + material->set_mat_index(block->staticMaterialAt(df::coord2d(xx, yy)).mat_index); } } } static command_result GetBlockList(color_ostream &stream, const BlockRequest *in, BlockList *out) { + int x, y, z; + DFHack::Maps::getPosition(x, y, z); + out->set_map_x(x); + out->set_map_y(y); MapExtras::MapCache MC; //stream.print("Got request for blocks from (%d, %d, %d) to (%d, %d, %d).\n", in->min_x(), in->min_y(), in->min_z(), in->max_x(), in->max_y(), in->max_z()); for (int zz = in->min_z(); zz < in->max_z(); zz++) From c373e57c0254ac12ed3883cde10e7436c63727b7 Mon Sep 17 00:00:00 2001 From: Japa Date: Wed, 31 Dec 2014 17:50:43 +0530 Subject: [PATCH 68/72] Added world names. --- plugins/proto/RemoteFortressReader.proto | 9 ++++++++ plugins/remotefortressreader.cpp | 28 ++++++++++++++++++++++-- 2 files changed, 35 insertions(+), 2 deletions(-) diff --git a/plugins/proto/RemoteFortressReader.proto b/plugins/proto/RemoteFortressReader.proto index 3829ecd6e..7c2806a15 100644 --- a/plugins/proto/RemoteFortressReader.proto +++ b/plugins/proto/RemoteFortressReader.proto @@ -108,6 +108,9 @@ message MapBlock required int32 map_z = 3; repeated int32 tiles = 4; repeated MatPair materials = 5; + repeated MatPair layer_materials = 6; + repeated MatPair vein_materials = 7; + repeated MatPair base_materials = 8; } message MatPair { @@ -194,4 +197,10 @@ message MapInfo optional int32 block_size_x = 1; optional int32 block_size_y = 2; optional int32 block_size_z = 3; + optional int32 block_pos_x = 4; + optional int32 block_pos_y = 5; + optional int32 block_pos_z = 6; + optional string world_name = 7; + optional string world_name_english = 8; + optional string save_name = 9; } \ No newline at end of file diff --git a/plugins/remotefortressreader.cpp b/plugins/remotefortressreader.cpp index 5a47561e9..0a035b5e6 100644 --- a/plugins/remotefortressreader.cpp +++ b/plugins/remotefortressreader.cpp @@ -45,7 +45,9 @@ #include "modules/MapCache.h" #include "modules/Materials.h" #include "modules/Gui.h" +#include "modules/Translation.h" #include "TileTypes.h" +#include "MiscUtils.h" #include #include @@ -566,9 +568,23 @@ void CopyBlock(df::map_block * DfBlock, RemoteFortressReader::MapBlock * NetBloc { df::tiletype tile = DfBlock->tiletype[xx][yy]; NetBlock->add_tiles(tile); + df::coord2d p = df::coord2d(xx, yy); + t_matpair layerMat = block->layerMaterialAt(p); + t_matpair veinMat = block->veinMaterialAt(p); + t_matpair baseMat = block->baseMaterialAt(p); + t_matpair staticMat = block->staticMaterialAt(p); RemoteFortressReader::MatPair * material = NetBlock->add_materials(); - material->set_mat_type(block->staticMaterialAt(df::coord2d(xx, yy)).mat_type); - material->set_mat_index(block->staticMaterialAt(df::coord2d(xx, yy)).mat_index); + material->set_mat_type(staticMat.mat_type); + material->set_mat_index(staticMat.mat_index); + RemoteFortressReader::MatPair * layerMaterial = NetBlock->add_layer_materials(); + layerMaterial->set_mat_type(layerMat.mat_type); + layerMaterial->set_mat_index(layerMat.mat_index); + RemoteFortressReader::MatPair * veinMaterial = NetBlock->add_vein_materials(); + veinMaterial->set_mat_type(veinMat.mat_type); + veinMaterial->set_mat_index(veinMat.mat_index); + RemoteFortressReader::MatPair * baseMaterial = NetBlock->add_base_materials(); + baseMaterial->set_mat_type(baseMat.mat_type); + baseMaterial->set_mat_index(baseMat.mat_index); } } } @@ -701,9 +717,17 @@ static command_result GetViewInfo(color_ostream &stream, const EmptyMessage *in, static command_result GetMapInfo(color_ostream &stream, const EmptyMessage *in, MapInfo *out) { uint32_t size_x, size_y, size_z; + int32_t pos_x, pos_y, pos_z; Maps::getSize(size_x, size_y, size_z); + Maps::getPosition(pos_x, pos_y, pos_z); out->set_block_size_x(size_x); out->set_block_size_y(size_y); out->set_block_size_z(size_z); + out->set_block_pos_x(pos_x); + out->set_block_pos_y(pos_y); + out->set_block_pos_z(pos_z); + out->set_world_name(DF2UTF(Translation::TranslateName(&df::global::world->world_data->name, false))); + out->set_world_name_english(DF2UTF(Translation::TranslateName(&df::global::world->world_data->name, true))); + out->set_save_name(df::global::world->cur_savegame.save_dir); return CR_OK; } \ No newline at end of file From 5626bb8da745cf5cbb5e4818f41df0fe6833f3cd Mon Sep 17 00:00:00 2001 From: Japa Date: Sun, 4 Jan 2015 19:05:48 +0530 Subject: [PATCH 69/72] layer and vein materials were being set wrong. --- plugins/remotefortressreader.cpp | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) diff --git a/plugins/remotefortressreader.cpp b/plugins/remotefortressreader.cpp index 0a035b5e6..a1d8e408c 100644 --- a/plugins/remotefortressreader.cpp +++ b/plugins/remotefortressreader.cpp @@ -569,19 +569,17 @@ void CopyBlock(df::map_block * DfBlock, RemoteFortressReader::MapBlock * NetBloc df::tiletype tile = DfBlock->tiletype[xx][yy]; NetBlock->add_tiles(tile); df::coord2d p = df::coord2d(xx, yy); - t_matpair layerMat = block->layerMaterialAt(p); - t_matpair veinMat = block->veinMaterialAt(p); t_matpair baseMat = block->baseMaterialAt(p); t_matpair staticMat = block->staticMaterialAt(p); RemoteFortressReader::MatPair * material = NetBlock->add_materials(); material->set_mat_type(staticMat.mat_type); material->set_mat_index(staticMat.mat_index); RemoteFortressReader::MatPair * layerMaterial = NetBlock->add_layer_materials(); - layerMaterial->set_mat_type(layerMat.mat_type); - layerMaterial->set_mat_index(layerMat.mat_index); + layerMaterial->set_mat_type(0); + layerMaterial->set_mat_index(block->layerMaterialAt(p)); RemoteFortressReader::MatPair * veinMaterial = NetBlock->add_vein_materials(); - veinMaterial->set_mat_type(veinMat.mat_type); - veinMaterial->set_mat_index(veinMat.mat_index); + veinMaterial->set_mat_type(0); + veinMaterial->set_mat_index(block->veinMaterialAt(p)); RemoteFortressReader::MatPair * baseMaterial = NetBlock->add_base_materials(); baseMaterial->set_mat_type(baseMat.mat_type); baseMaterial->set_mat_index(baseMat.mat_index); @@ -708,9 +706,9 @@ static command_result GetViewInfo(color_ostream &stream, const EmptyMessage *in, out->set_view_pos_z(z); out->set_view_size_x(w); out->set_view_size_y(h); - out->set_cursor_pos_x(x); - out->set_cursor_pos_y(y); - out->set_cursor_pos_z(z); + out->set_cursor_pos_x(cx); + out->set_cursor_pos_y(cy); + out->set_cursor_pos_z(cz); return CR_OK; } From 3e91d34ab375a03adf53465a9d80b8a4bb0f99b6 Mon Sep 17 00:00:00 2001 From: Japa Date: Sun, 11 Jan 2015 16:16:53 +0530 Subject: [PATCH 70/72] remotefortressreader.cpp only sends map changes now. --- plugins/remotefortressreader.cpp | 32 +++++++++++++++++++++++++++++++- 1 file changed, 31 insertions(+), 1 deletion(-) diff --git a/plugins/remotefortressreader.cpp b/plugins/remotefortressreader.cpp index a1d8e408c..07c84e9ea 100644 --- a/plugins/remotefortressreader.cpp +++ b/plugins/remotefortressreader.cpp @@ -73,6 +73,7 @@ static command_result CheckHashes(color_ostream &stream, const EmptyMessage *in) static command_result GetUnitList(color_ostream &stream, const EmptyMessage *in, UnitList *out); static command_result GetViewInfo(color_ostream &stream, const EmptyMessage *in, ViewInfo *out); static command_result GetMapInfo(color_ostream &stream, const EmptyMessage *in, MapInfo *out); +static command_result ResetMapHashes(color_ostream &stream, const EmptyMessage *in); void CopyBlock(df::map_block * DfBlock, RemoteFortressReader::MapBlock * NetBlock, MapExtras::MapCache * MC); @@ -122,6 +123,7 @@ DFhackCExport RPCService *plugin_rpcconnect(color_ostream &) svc->addFunction("GetUnitList", GetUnitList); svc->addFunction("GetViewInfo", GetViewInfo); svc->addFunction("GetMapInfo", GetMapInfo); + svc->addFunction("ResetMapHashes", ResetMapHashes); return svc; } @@ -411,6 +413,31 @@ static command_result CheckHashes(color_ostream &stream, const EmptyMessage *in) return CR_OK; } +map hashes; + +//check if the tiletypes have changed +bool IsTiletypeChanged(DFCoord pos) +{ + uint16_t hash; + df::map_block * block = Maps::getBlock(pos); + if (block) + hash = fletcher16((uint8_t*)(block->tiletype), 16 * 16 * sizeof(df::enums::tiletype::tiletype)); + else + hash = 0; + if (hashes[pos] != hash) + { + hashes[pos] = hash; + return true; + } + return false; +} + +static command_result ResetMapHashes(color_ostream &stream, const EmptyMessage *in) +{ + hashes.clear(); + return CR_OK; +} + df::matter_state GetState(df::material * mat, uint16_t temp = 10015) { df::matter_state state = matter_state::Solid; @@ -601,7 +628,10 @@ static command_result GetBlockList(color_ostream &stream, const BlockRequest *in { for (int xx = in->min_x(); xx < in->max_x(); xx++) { - df::map_block * block = DFHack::Maps::getBlock(xx, yy, zz); + DFCoord pos = DFCoord(xx, yy, zz); + if (!IsTiletypeChanged(pos)) + continue; + df::map_block * block = DFHack::Maps::getBlock(pos); if (block == NULL) continue; RemoteFortressReader::MapBlock *net_block = out->add_map_blocks(); From 8efac385cc037cea2f12519b3602244385268b2e Mon Sep 17 00:00:00 2001 From: Japa Date: Mon, 19 Jan 2015 19:58:09 +0530 Subject: [PATCH 71/72] changed tile direction to a string, rather than a hard to understand int. --- plugins/proto/RemoteFortressReader.proto | 2 +- plugins/remotefortressreader.cpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/plugins/proto/RemoteFortressReader.proto b/plugins/proto/RemoteFortressReader.proto index 7c2806a15..020e58651 100644 --- a/plugins/proto/RemoteFortressReader.proto +++ b/plugins/proto/RemoteFortressReader.proto @@ -93,7 +93,7 @@ message Tiletype optional TiletypeSpecial special = 5; optional TiletypeMaterial material = 6; optional TiletypeVariant variant = 7; - optional uint32 direction = 8; + optional string direction = 8; }; message TiletypeList diff --git a/plugins/remotefortressreader.cpp b/plugins/remotefortressreader.cpp index 07c84e9ea..b5614557d 100644 --- a/plugins/remotefortressreader.cpp +++ b/plugins/remotefortressreader.cpp @@ -658,7 +658,7 @@ static command_result GetTiletypeList(color_ostream &stream, const EmptyMessage type->set_special(TranslateSpecial(tileSpecial(tt))); type->set_material(TranslateMaterial(tileMaterial(tt))); type->set_variant(TranslateVariant(tileVariant(tt))); - type->set_direction(tileDirection(tt).whole); + type->set_direction(tileDirection(tt).getStr()); count++; } return CR_OK; From 6e7b543414c258ff77df46bb77652bfec498ceab Mon Sep 17 00:00:00 2001 From: Japa Date: Fri, 13 Feb 2015 18:38:02 +0530 Subject: [PATCH 72/72] Added liquids --- plugins/proto/RemoteFortressReader.proto | 2 + plugins/remotefortressreader.cpp | 93 ++++++++++++++++-------- 2 files changed, 65 insertions(+), 30 deletions(-) diff --git a/plugins/proto/RemoteFortressReader.proto b/plugins/proto/RemoteFortressReader.proto index 020e58651..f1e611132 100644 --- a/plugins/proto/RemoteFortressReader.proto +++ b/plugins/proto/RemoteFortressReader.proto @@ -111,6 +111,8 @@ message MapBlock repeated MatPair layer_materials = 6; repeated MatPair vein_materials = 7; repeated MatPair base_materials = 8; + repeated int32 magma = 9; + repeated int32 water = 10; } message MatPair { diff --git a/plugins/remotefortressreader.cpp b/plugins/remotefortressreader.cpp index 6b5b1e76e..606658bf7 100644 --- a/plugins/remotefortressreader.cpp +++ b/plugins/remotefortressreader.cpp @@ -79,7 +79,7 @@ static command_result GetMapInfo(color_ostream &stream, const EmptyMessage *in, static command_result ResetMapHashes(color_ostream &stream, const EmptyMessage *in); -void CopyBlock(df::map_block * DfBlock, RemoteFortressReader::MapBlock * NetBlock, MapExtras::MapCache * MC); +void CopyBlock(df::map_block * DfBlock, RemoteFortressReader::MapBlock * NetBlock, MapExtras::MapCache * MC, DFCoord pos); void FindChangedBlocks(); const char* growth_locations[] = { @@ -420,7 +420,7 @@ bool IsTiletypeChanged(DFCoord pos) uint16_t hash; df::map_block * block = Maps::getBlock(pos); if (block) - hash = fletcher16((uint8_t*)(block->tiletype), 16 * 16 * sizeof(df::enums::tiletype::tiletype)); + hash = fletcher16((uint8_t*)(block->tiletype), 16 * 16 * (sizeof(df::enums::tiletype::tiletype))); else hash = 0; if (hashes[pos] != hash) @@ -431,9 +431,29 @@ bool IsTiletypeChanged(DFCoord pos) return false; } +map waterHashes; + +//check if the tiletypes have changed +bool IsDesignationChanged(DFCoord pos) +{ + uint16_t hash; + df::map_block * block = Maps::getBlock(pos); + if (block) + hash = fletcher16((uint8_t*)(block->designation), 16 * 16 * (sizeof(df::tile_designation))); + else + hash = 0; + if (waterHashes[pos] != hash) + { + waterHashes[pos] = hash; + return true; + } + return false; +} + static command_result ResetMapHashes(color_ostream &stream, const EmptyMessage *in) { hashes.clear(); + waterHashes.clear(); return CR_OK; } @@ -581,36 +601,49 @@ static command_result GetGrowthList(color_ostream &stream, const EmptyMessage *i return CR_OK; } -void CopyBlock(df::map_block * DfBlock, RemoteFortressReader::MapBlock * NetBlock, MapExtras::MapCache * MC) +void CopyBlock(df::map_block * DfBlock, RemoteFortressReader::MapBlock * NetBlock, MapExtras::MapCache * MC, DFCoord pos) { NetBlock->set_map_x(DfBlock->map_pos.x); NetBlock->set_map_y(DfBlock->map_pos.y); NetBlock->set_map_z(DfBlock->map_pos.z); MapExtras::Block * block = MC->BlockAtTile(DfBlock->map_pos); - for (int yy = 0; yy < 16; yy++) - { - for (int xx = 0; xx < 16; xx++) - { - df::tiletype tile = DfBlock->tiletype[xx][yy]; - NetBlock->add_tiles(tile); - df::coord2d p = df::coord2d(xx, yy); - t_matpair baseMat = block->baseMaterialAt(p); - t_matpair staticMat = block->staticMaterialAt(p); - RemoteFortressReader::MatPair * material = NetBlock->add_materials(); - material->set_mat_type(staticMat.mat_type); - material->set_mat_index(staticMat.mat_index); - RemoteFortressReader::MatPair * layerMaterial = NetBlock->add_layer_materials(); - layerMaterial->set_mat_type(0); - layerMaterial->set_mat_index(block->layerMaterialAt(p)); - RemoteFortressReader::MatPair * veinMaterial = NetBlock->add_vein_materials(); - veinMaterial->set_mat_type(0); - veinMaterial->set_mat_index(block->veinMaterialAt(p)); - RemoteFortressReader::MatPair * baseMaterial = NetBlock->add_base_materials(); - baseMaterial->set_mat_type(baseMat.mat_type); - baseMaterial->set_mat_index(baseMat.mat_index); - } - } + if (IsTiletypeChanged(pos)) + for (int yy = 0; yy < 16; yy++) + for (int xx = 0; xx < 16; xx++) + { + df::tiletype tile = DfBlock->tiletype[xx][yy]; + NetBlock->add_tiles(tile); + df::coord2d p = df::coord2d(xx, yy); + t_matpair baseMat = block->baseMaterialAt(p); + t_matpair staticMat = block->staticMaterialAt(p); + RemoteFortressReader::MatPair * material = NetBlock->add_materials(); + material->set_mat_type(staticMat.mat_type); + material->set_mat_index(staticMat.mat_index); + RemoteFortressReader::MatPair * layerMaterial = NetBlock->add_layer_materials(); + layerMaterial->set_mat_type(0); + layerMaterial->set_mat_index(block->layerMaterialAt(p)); + RemoteFortressReader::MatPair * veinMaterial = NetBlock->add_vein_materials(); + veinMaterial->set_mat_type(0); + veinMaterial->set_mat_index(block->veinMaterialAt(p)); + RemoteFortressReader::MatPair * baseMaterial = NetBlock->add_base_materials(); + baseMaterial->set_mat_type(baseMat.mat_type); + baseMaterial->set_mat_index(baseMat.mat_index); + } + if (IsDesignationChanged(pos)) + for (int yy = 0; yy < 16; yy++) + for (int xx = 0; xx < 16; xx++) + { + df::tile_designation designation = DfBlock->designation[xx][yy]; + int lava = 0; + int water = 0; + if (designation.bits.liquid_type == df::enums::tile_liquid::Magma) + lava = designation.bits.flow_size; + else + water = designation.bits.flow_size; + NetBlock->add_magma(lava); + NetBlock->add_water(water); + } } static command_result GetBlockList(color_ostream &stream, const BlockRequest *in, BlockList *out) @@ -628,13 +661,13 @@ static command_result GetBlockList(color_ostream &stream, const BlockRequest *in for (int xx = in->min_x(); xx < in->max_x(); xx++) { DFCoord pos = DFCoord(xx, yy, zz); - if (!IsTiletypeChanged(pos)) - continue; df::map_block * block = DFHack::Maps::getBlock(pos); if (block == NULL) continue; - RemoteFortressReader::MapBlock *net_block = out->add_map_blocks(); - CopyBlock(block, net_block,&MC); + { + RemoteFortressReader::MapBlock *net_block = out->add_map_blocks(); + CopyBlock(block, net_block, &MC, pos); + } } } }

oBtk&O1Y$tr)#Er~lLb9VZX_-`HMA#Nv8BInnto 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