修复主从交互bug

This commit is contained in:
DESKTOP-5RP3AKU\Jisol 2024-09-23 03:50:27 +08:00
parent ca64b708ac
commit b65b860b98
55 changed files with 233 additions and 119 deletions

View File

@ -806,12 +806,12 @@
<Reference Include="System.Xml.Serialization">
<HintPath>C:\APP\UnityEdit\2021.3.33f1c1\Editor\Data\NetStandard\compat\2.1.0\shims\netfx\System.Xml.Serialization.dll</HintPath>
</Reference>
<Reference Include="UnityEditor.UI">
<HintPath>D:\Jisol\JisolGame\JNFrame2\Library\ScriptAssemblies\UnityEditor.UI.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.UI">
<HintPath>D:\Jisol\JisolGame\JNFrame2\Library\ScriptAssemblies\UnityEngine.UI.dll</HintPath>
</Reference>
<Reference Include="UnityEditor.UI">
<HintPath>D:\Jisol\JisolGame\JNFrame2\Library\ScriptAssemblies\UnityEditor.UI.dll</HintPath>
</Reference>
</ItemGroup>
<ItemGroup>
</ItemGroup>

View File

@ -688,6 +688,7 @@
<Compile Include="Assets\JNGame\Math\BaseType\LFloat.Extension.cs" />
<Compile Include="Assets\JNGame\Map\DotRecast\Src\DotRecast.Detour.Dynamic\Io\DtVoxelFileWriter.cs" />
<Compile Include="Assets\Scripts\AppGame\GActionEnum.cs" />
<Compile Include="Assets\Scripts\Game\View\VDEntityBasis.cs" />
<Compile Include="Assets\JNGame\Map\DotRecast\Src\DotRecast.Core\RcObjImporterContext.cs" />
<Compile Include="Assets\JNGame\Plugins\Entitas\Entitas\src\EntityIndex\AbstractEntityIndex.cs" />
<Compile Include="Assets\JNGame\Plugins\Entitas\Entitas.CodeGeneration.Attributes\src\EntityIndex\PrimaryEntityIndexAttribute.cs" />
@ -703,7 +704,6 @@
<Compile Include="Assets\JNGame\Map\DotRecast\Src\DotRecast.Core\IRcRand.cs" />
<Compile Include="Assets\JNGame\Math\BaseType\LVector2.cs" />
<Compile Include="Assets\JNGame\Plugins\Entitas\Entitas\src\Context\Context.cs" />
<Compile Include="Assets\Scripts\Game\View\VDEntityBasis.cs" />
<None Include="Assets\TextMesh Pro\Shaders\TMPro.cginc" />
<None Include="Assets\TextMesh Pro\Shaders\TMP_SDF-Mobile Overlay.shader" />
<None Include="Assets\Packages\Google.Protobuf.3.18.3\lib\netstandard2.0\Google.Protobuf.xml" />

View File

@ -8,8 +8,8 @@
LocalClientConnect = 11, //客户端连接 (用于客户端通知)
LocalClientDisconnect = 12, //客户端断开 (用于客户端通知)
ServerClientConnect = 13, //服务器客户端连接 (用于服务端通知)
ServerClientDisconnect = 14, //服务器客户端断开 (用于服务端通知)
ServerClientConnect = 13, //服务器客户端连接 (用于业务服务端通知)
ServerClientDisconnect = 14, //服务器客户端断开 (用于业务服务端通知)
NSyncFrameStart = 100, //帧同步开始
NSyncFrameEnd = 101, //帧同步结束

View File

@ -26,6 +26,6 @@ namespace JNGame.Sync.State.Tile.Entity.Component
public virtual void OnTileEnter(){}
public virtual void OnTileExit(){}
public void OnTileSlaveExit(){}
}
}

View File

@ -125,6 +125,7 @@ namespace JNGame.Sync.State.Tile.Entity
if (isHost && !isContains)
{
OnTileExit();
if (SyncTile.IsSlave) OnTileSlaveExit();
}
}
@ -147,5 +148,13 @@ namespace JNGame.Sync.State.Tile.Entity
}
}
public virtual void OnTileSlaveExit()
{
//给组件生命周期
foreach (var component in GetComponents())
{
(component as JNTileComponent)?.OnTileSlaveExit();
}
}
}
}

View File

@ -13,5 +13,10 @@
/// </summary>
public void OnTileExit();
/// <summary>
/// 从服务器 - 退出当前区块
/// </summary>
public void OnTileSlaveExit();
}
}

View File

@ -1,5 +1,6 @@
using System;
using System.Collections.Generic;
using DotRecast.Core.Collections;
using Entitas;
using JNGame.Sync.Entity;
using JNGame.Sync.Frame.Entity.Component.Components;
@ -17,18 +18,20 @@ namespace JNGame.Sync.Frame.Entity
//方便查抄的实体Map
public Dictionary<ulong, T> Entities = new ();
public JNContext(): base((new T()).NewCLookup().Count, () => new T())
public JNContext()
: this((new T()).NewCLookup().Count, () => new T())
{
CLookup = (new T()).NewCLookup();
}
public JNContext(int totalComponents, Func<T> entityFactory) : base(totalComponents, entityFactory)
public JNContext(int totalComponents, Func<T> entityFactory) : this(totalComponents, 0, null, null, entityFactory)
{
}
public JNContext(int totalComponents, int startCreationIndex, ContextInfo contextInfo, Func<IEntity, IAERC> aercFactory, Func<T> entityFactory) : base(totalComponents, startCreationIndex, contextInfo, aercFactory, entityFactory)
public JNContext(int totalComponents, int startCreationIndex, ContextInfo contextInfo, Func<IEntity, IAERC> aercFactory, Func<T> entityFactory)
: base(totalComponents, startCreationIndex, contextInfo, aercFactory, entityFactory)
{
CLookup = (new T()).NewCLookup();
}
public JNSyncService GetSync()
@ -96,8 +99,20 @@ namespace JNGame.Sync.Frame.Entity
BindLifeCycle(entity);
return entity;
}
//生效延迟销毁
public void DelayDestroy()
{
GetEntities().ForEach(child =>
{
if (child.IsDelayDestroy)
{
child.Destroy();
}
});
}
//帧同步 生命周期
//生命周期
public virtual void OnSyncStart(){}
public virtual void OnSyncUpdate(int dt)
@ -122,6 +137,7 @@ namespace JNGame.Sync.Frame.Entity
public abstract void InitReference(JNSyncService data);
public void AddEntity(ulong id,JNEntity entity);
public void RemoveEntity(ulong id);
public void DelayDestroy();
}

View File

@ -19,12 +19,18 @@ namespace JNGame.Sync.Entity
}
//给所有实体推帧
public void Simulate()
public virtual void Simulate()
{
for (var i = 0; i < allContexts.Length; i++)
{
(allContexts[i] as IJNContext)?.OnSyncUpdate(Sync.DeltaTime);
}
//延迟销毁
for (var i = 0; i < allContexts.Length; i++)
{
(allContexts[i] as IJNContext)?.DelayDestroy();
}
}
public T GetContext<T>() where T : IContext

View File

@ -50,6 +50,8 @@ namespace JNGame.Sync.Entity
/// </summary>
public LVector3 Position => Transform.Position;
public bool IsDelayDestroy { get; private set; } = false;
public virtual void OnInit(IJNContext context,ulong id = 0)
{
Context = context;
@ -127,12 +129,18 @@ namespace JNGame.Sync.Entity
public override void Destroy()
{
//清理缓存
Context.RemoveEntity(Id);
OnSyncDestroy();
RemoveAllComponents();
base.Destroy();
}
public void DelayDestroy()
{
IsDelayDestroy = true;
}
//生命周期
public virtual void OnSyncStart(){}
@ -146,7 +154,11 @@ namespace JNGame.Sync.Entity
}
public virtual void OnSyncDestroy()
{}
{
_id = 0;
IsDelayDestroy = false;
}
}
}

View File

@ -148,7 +148,6 @@ namespace JNGame.Sync.System.Data
if (NodeContext.Query(child.Key) is null)
{
Delete(child.Key);
return;
}
//主动更新
@ -179,7 +178,7 @@ namespace JNGame.Sync.System.Data
{
var entity = NodeContext.Query(keyValue.Key);
//给从服务器发送数据
if (IsMaster && entity is not null && entity.IsSyncSlave)
if (IsMaster && ((entity is not null && entity.IsSyncSlave) || keyValue.Value == SDByteOperate.Delete))
{
slave[keyValue.Key] = keyValue.Value;
}

View File

@ -35,7 +35,6 @@ namespace AppGame
public static readonly JNGClientGroup Client = new JNGClientGroup();
public static readonly JNGResService Resource = new JNGResService();
public static readonly JNGGame Game = new JNGGame();
public static readonly JNGSocket Socket = new JNGSocket();
public static readonly JAPI API = new(new JAPIConfig(){BaseURL = "http://127.0.0.1:8080"});
public static readonly GAPI GAPI = new GAPI();
public static readonly EventDispatcher Event = new();
@ -50,7 +49,6 @@ namespace AppGame
Client,
Resource,
Game,
// Socket,
};
}

View File

@ -89,7 +89,7 @@ namespace AppGame.Sync
protected override void OnSendInput(JNFrameInputs inputs)
{
//发送帧数据给服务端
App.Socket.Send((int)NActionEnum.NSyncFrameInput,inputs);
App.Business.Send((int)NActionEnum.NSyncFrameInput,inputs);
}
/// <summary>

View File

@ -89,7 +89,7 @@ namespace AppGame.Sync
if (inputs.Inputs.Count > 0)
{
//发送帧数据给服务端
App.Socket.Send((int)NActionEnum.NSyncFrameInput,inputs);
App.Business.Send((int)NActionEnum.NSyncFrameInput,inputs);
}
}

View File

@ -74,7 +74,7 @@ namespace AppGame.Systems
private void OnNSyncStateDataUpdate(byte[] data)
{
var info = JNStateItemData.Parser.ParseFrom(data);
App.Game.AddState(info);
App.Game.SyncState(info,true,false);
}
@ -92,7 +92,7 @@ namespace AppGame.Systems
//生效全局回调
allData.Data.Data.ForEach(child =>
{
App.Game.AddState(child);
App.Game.SyncState(child,true,false);
});
}

View File

@ -4,6 +4,7 @@ using System.Threading.Tasks;
using AppGame.Sync;
using Cysharp.Threading.Tasks;
using DotRecast.Core.Collections;
using Game.Logic.System;
using Google.Protobuf;
using JNGame.Network;
using JNGame.Sync.State.Tile;
@ -31,6 +32,7 @@ namespace AppGame.Systems.CServer
AddListener((int)NActionEnum.NSyncTileInput,OnNSyncTileInput);
AddListener((int)NActionEnum.NSyncTileAllUpdate,OnNSyncTileAllUpdate);
AddListener((int)NActionEnum.NSyncTileGetTileInfo,OnNSyncTileGetTileInfo);
AddListener((int)NActionEnum.LocalClientDisconnect,OnLocalClientDisconnect);
OnInit_Game();
@ -38,6 +40,7 @@ namespace AppGame.Systems.CServer
await base.OnInit();
}
public override void OnClose()
{
isInit = false;
@ -165,5 +168,23 @@ namespace AppGame.Systems.CServer
}
/// <summary>
/// 有客户端断开连接
/// </summary>
private void OnLocalClientDisconnect(JNServerParam args)
{
if (App.Game.Server is null) return;
//只有绑定过ID 的客户端才可以执行操作
if (!ids.ContainsKey(args.Client)) return;
App.Game.Server.GetSystems<DGBasisSystem>().ForEach(child =>
{
child.OnPlayerExitServer(ids[args.Client]);
});
}
}
}

View File

@ -74,7 +74,7 @@ namespace AppGame.Systems
private void OnNSyncStateDataUpdate(byte[] data)
{
var info = JNStateItemData.Parser.ParseFrom(data);
App.Game.AddState(info);
App.Game.SyncState(info,false,true);
}
/// <summary>
@ -91,7 +91,7 @@ namespace AppGame.Systems
//生效全局状态
allData.Data.Data.ForEach(child =>
{
App.Game.AddState(child);
App.Game.SyncState(child,false,true);
});
}

View File

@ -112,24 +112,30 @@ namespace AppGame.Systems
/// <summary>
/// 接收状态数据
/// </summary>
public void AddState(JNStateItemData frame)
public void SyncState(JNStateItemData frame,bool isSyncClient,bool isSyncServer)
{
var message = new Dictionary<ulong, byte[]>();
foreach (var data in frame.Messages)
{
message.Add(data.Key,data.Value.Data.ToByteArray());
}
client?.GetSystems<ISStateDataSystem>().ForEach(child =>
if (isSyncClient)
{
if (child.NetID != frame.NetID) return;
child.OnInsertUBytes(message);
});
server?.GetSystems<ISStateDataSystem>().ForEach(child =>
client?.GetSystems<ISStateDataSystem>().ForEach(child =>
{
if (child.NetID != frame.NetID) return;
child.OnInsertUBytes(message);
});
}
if (isSyncServer)
{
if (child.NetID != frame.NetID) return;
child.OnInsertUBytes(message);
});
server?.GetSystems<ISStateDataSystem>().ForEach(child =>
{
if (child.NetID != frame.NetID) return;
child.OnInsertUBytes(message);
});
}
}
}

View File

@ -8,6 +8,8 @@ namespace Game.JNGFrame.Logic.Entity
{
public override IContext[] allContexts { get; } = { new EDNodeContext(),new EDPlayerContext(),new EDBossContext(), };
}
}

View File

@ -2,6 +2,8 @@
using JNGame.Sync.Frame.Service;
using JNGame.Sync.State.Tile;
using JNGame.Sync.State.Tile.Entity;
using JNGame.Sync.System.Data;
using NotImplementedException = System.NotImplementedException;
namespace Game.Logic.Entity
{
@ -24,7 +26,17 @@ namespace Game.Logic.Entity
}
return LVector3.Down;
}
public override void TileSyncData(ISTileData data)
{
Transform.Position = data.GetDataPosition();
}
public override void OnTileSlaveExit()
{
base.OnTileSlaveExit();
//从服务器 - 实体移出后立即删除
Destroy();
}
}
}

View File

@ -34,6 +34,10 @@ namespace Game.JNGFrame.Logic.Entity.Controller
public override void OnSyncStart()
{
//Player 同步到从服务器
TileEntity.IsSyncSlave = true;
base.OnSyncStart();
Move.Speed = LFloat.L10;
}

View File

@ -1,4 +1,5 @@
using Game.JNGFrame.Logic.Entity.Controller;
using Entitas;
using Game.JNGFrame.Logic.Entity.Controller;
using Game.Logic.Entity.Nodes;
using Game.Logic.Entity.Nodes.Component.Components;
using JNGame.Sync.State.Tile.Entity;
@ -7,6 +8,7 @@ namespace Game.JNGFrame.Logic.Entity.Contexts
{
public sealed partial class EDPlayerContext : JNTileContext<EDPlayer>
{
protected override EDPlayer BindComponent(EDPlayer entity)
{
base.BindComponent(entity);
@ -14,5 +16,6 @@ namespace Game.JNGFrame.Logic.Entity.Contexts
entity.AddComponent<EDPlayerController>();
return entity;
}
}
}

View File

@ -13,12 +13,6 @@ namespace Game.Logic.Entity.Nodes
public EDMoveComponent Move => CLookup.Query<EDMoveComponent>(this);
public EDBossController Controller => CLookup.Query<EDBossController>(this);
public override void TileSyncData(ISTileData data)
{
var nodeData = data as EDBossData;
Transform.Position = nodeData.Value.Position.ToLVector3();
}
public override JNEntityLookup NewCLookup()
{
return new EDBoosLookup();

View File

@ -12,13 +12,6 @@ namespace Game.Logic.Entity.Nodes
public EDMoveComponent Move => CLookup.Query<EDMoveComponent>(this);
public override void TileSyncData(ISTileData data)
{
var nodeData = data as EDNodeData;
Transform.Position = nodeData.Value.Position.ToLVector3();
}
public override JNEntityLookup NewCLookup()
{
return new EDNodeLookup();

View File

@ -16,9 +16,9 @@ namespace Game.Logic.Entity.Nodes
public override void TileSyncData(ISTileData data)
{
base.TileSyncData(data);
var nodeData = data as EDPlayerData;
Controller.AuthBind(nodeData.Value.Auth.Value);
Transform.Position = nodeData.Value.Position.ToLVector3();
}
public override JNEntityLookup NewCLookup()

View File

@ -30,5 +30,11 @@ namespace Game.Logic.System
return LVector3.Down;
}
/// <summary>
/// [状态同步生命周期] 玩家离开服务器 不在游戏线程中执行
/// </summary>
public virtual void OnPlayerExitServer(int auth){}
}
}

View File

@ -1,6 +1,5 @@
using DotRecast.Core.Collections;
using Game.Input;
using Game.JNGFrame.Logic.Entity;
using Game.JNGFrame.Logic.Entity.Contexts;
using Game.Logic.Entity.Nodes;
using JNGame.Math;
@ -40,5 +39,20 @@ namespace Game.Logic.System.Logic
});
}
public override void OnPlayerExitServer(int auth)
{
base.OnPlayerExitServer(auth);
NodeContext.GetHostEntities().ForEach(child =>
{
if (child.Controller.Auth == auth)
{
child.DelayDestroy();
}
});
}
}
}

View File

@ -14,6 +14,9 @@ namespace Game.JNGFrame.View.Entity
public GameObject VWorld => App.Resource.VWorld;
public GameObject Player => App.Resource.Player;
public CinemachineFreeLook FreeLook => App.Resource.FreeLook;
//本地玩家 视图
private GameObject LocalView;
public VDPlayers(SViewSystem root) : base(root)
{
@ -67,9 +70,20 @@ namespace Game.JNGFrame.View.Entity
public override GameObject NewView(EDPlayerData data)
{
var gameObject = Object.Instantiate(Player, VWorld.transform);
gameObject.name = $"Player_{data.Id}";
return gameObject;
GameObject view;
//如果这个角色是自己 则 直接拿自己的 View
if (App.IsClient() && data.Value.Auth == App.ClientID)
{
if (LocalView is null) LocalView = Object.Instantiate(Player, VWorld.transform);
view = LocalView;
}
else
{
view = Object.Instantiate(Player, VWorld.transform);
}
view.name = $"Player_{data.Id}";
return view;
}
public override EDPlayerData[] GetData()
@ -80,7 +94,10 @@ namespace Game.JNGFrame.View.Entity
public override void ViewRemove(GameObject view)
{
view.transform.DOKill();
Object.Destroy(view);
if (LocalView != view)
{
Object.Destroy(view);
}
}
}
}

View File

@ -1979,8 +1979,8 @@
<Compile Include="Assets\Plugins\Best HTTP\Source\SecureProtocol\util\encoders\UrlBase64.cs" />
<Compile Include="Assets\Plugins\Best HTTP\Source\SocketIO.3\Events\TypedEventTable.cs" />
<Compile Include="Assets\Plugins\Best HTTP\Source\SecureProtocol\asn1\x509\Target.cs" />
<Compile Include="Assets\Plugins\Best HTTP\Source\SocketIO.3\Transports\WebSocketTransport.cs" />
<Compile Include="Assets\Plugins\Best HTTP\Source\Extensions\Timer.cs" />
<Compile Include="Assets\Plugins\Best HTTP\Source\SocketIO.3\Transports\WebSocketTransport.cs" />
<Compile Include="Assets\Plugins\Best HTTP\Source\SecureProtocol\crypto\signers\Iso9796d2PssSigner.cs" />
<Compile Include="Assets\Plugins\Best HTTP\Source\SecureProtocol\crypto\generators\KDFDoublePipelineIterationBytesGenerator.cs" />
<Compile Include="Assets\Plugins\Best HTTP\Source\SecureProtocol\security\JksStore.cs" />
@ -2809,12 +2809,12 @@
<Reference Include="System.Xml.Serialization">
<HintPath>C:\APP\UnityEdit\2021.3.33f1c1\Editor\Data\NetStandard\compat\2.1.0\shims\netfx\System.Xml.Serialization.dll</HintPath>
</Reference>
<Reference Include="UnityEditor.UI">
<HintPath>D:\Jisol\JisolGame\JNFrame2\Library\ScriptAssemblies\UnityEditor.UI.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.UI">
<HintPath>D:\Jisol\JisolGame\JNFrame2\Library\ScriptAssemblies\UnityEngine.UI.dll</HintPath>
</Reference>
<Reference Include="UnityEditor.UI">
<HintPath>D:\Jisol\JisolGame\JNFrame2\Library\ScriptAssemblies\UnityEditor.UI.dll</HintPath>
</Reference>
</ItemGroup>
<ItemGroup>
</ItemGroup>

View File

@ -1,3 +0,0 @@
Base path: 'C:/APP/UnityEdit/2021.3.33f1c1/Editor/Data', plugins path 'C:/APP/UnityEdit/2021.3.33f1c1/Editor/Data/PlaybackEngines'
Cmd: initializeCompiler

View File

@ -839,12 +839,12 @@
<Reference Include="System.Xml.XPath.XDocument">
<HintPath>C:\APP\UnityEdit\2021.3.33f1c1\Editor\Data\UnityReferenceAssemblies\unity-4.8-api\Facades\System.Xml.XPath.XDocument.dll</HintPath>
</Reference>
<Reference Include="UnityEditor.UI">
<HintPath>D:\Jisol\JisolGame\JNFrame2\Library\ScriptAssemblies\UnityEditor.UI.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.UI">
<HintPath>D:\Jisol\JisolGame\JNFrame2\Library\ScriptAssemblies\UnityEngine.UI.dll</HintPath>
</Reference>
<Reference Include="UnityEditor.UI">
<HintPath>D:\Jisol\JisolGame\JNFrame2\Library\ScriptAssemblies\UnityEditor.UI.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.TestRunner">
<HintPath>D:\Jisol\JisolGame\JNFrame2\Library\ScriptAssemblies\UnityEngine.TestRunner.dll</HintPath>
</Reference>

View File

@ -916,12 +916,12 @@
<Reference Include="System.Xml.Serialization">
<HintPath>C:\APP\UnityEdit\2021.3.33f1c1\Editor\Data\NetStandard\compat\2.1.0\shims\netfx\System.Xml.Serialization.dll</HintPath>
</Reference>
<Reference Include="UnityEditor.UI">
<HintPath>D:\Jisol\JisolGame\JNFrame2\Library\ScriptAssemblies\UnityEditor.UI.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.UI">
<HintPath>D:\Jisol\JisolGame\JNFrame2\Library\ScriptAssemblies\UnityEngine.UI.dll</HintPath>
</Reference>
<Reference Include="UnityEditor.UI">
<HintPath>D:\Jisol\JisolGame\JNFrame2\Library\ScriptAssemblies\UnityEditor.UI.dll</HintPath>
</Reference>
</ItemGroup>
<ItemGroup>
<ProjectReference Include="StompyRobot.SRF.csproj">

View File

@ -830,12 +830,12 @@
<Reference Include="System.Xml.XPath.XDocument">
<HintPath>C:\APP\UnityEdit\2021.3.33f1c1\Editor\Data\UnityReferenceAssemblies\unity-4.8-api\Facades\System.Xml.XPath.XDocument.dll</HintPath>
</Reference>
<Reference Include="UnityEditor.UI">
<HintPath>D:\Jisol\JisolGame\JNFrame2\Library\ScriptAssemblies\UnityEditor.UI.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.UI">
<HintPath>D:\Jisol\JisolGame\JNFrame2\Library\ScriptAssemblies\UnityEngine.UI.dll</HintPath>
</Reference>
<Reference Include="UnityEditor.UI">
<HintPath>D:\Jisol\JisolGame\JNFrame2\Library\ScriptAssemblies\UnityEditor.UI.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.TestRunner">
<HintPath>D:\Jisol\JisolGame\JNFrame2\Library\ScriptAssemblies\UnityEngine.TestRunner.dll</HintPath>
</Reference>

View File

@ -861,12 +861,12 @@
<Reference Include="System.Xml.Serialization">
<HintPath>C:\APP\UnityEdit\2021.3.33f1c1\Editor\Data\NetStandard\compat\2.1.0\shims\netfx\System.Xml.Serialization.dll</HintPath>
</Reference>
<Reference Include="UnityEditor.UI">
<HintPath>D:\Jisol\JisolGame\JNFrame2\Library\ScriptAssemblies\UnityEditor.UI.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.UI">
<HintPath>D:\Jisol\JisolGame\JNFrame2\Library\ScriptAssemblies\UnityEngine.UI.dll</HintPath>
</Reference>
<Reference Include="UnityEditor.UI">
<HintPath>D:\Jisol\JisolGame\JNFrame2\Library\ScriptAssemblies\UnityEditor.UI.dll</HintPath>
</Reference>
</ItemGroup>
<ItemGroup>
</ItemGroup>

View File

@ -806,12 +806,12 @@
<Reference Include="System.Xml.Serialization">
<HintPath>C:\APP\UnityEdit\2021.3.33f1c1\Editor\Data\NetStandard\compat\2.1.0\shims\netfx\System.Xml.Serialization.dll</HintPath>
</Reference>
<Reference Include="UnityEditor.UI">
<HintPath>D:\Jisol\JisolGame\JNFrame2\Library\ScriptAssemblies\UnityEditor.UI.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.UI">
<HintPath>D:\Jisol\JisolGame\JNFrame2\Library\ScriptAssemblies\UnityEngine.UI.dll</HintPath>
</Reference>
<Reference Include="UnityEditor.UI">
<HintPath>D:\Jisol\JisolGame\JNFrame2\Library\ScriptAssemblies\UnityEditor.UI.dll</HintPath>
</Reference>
</ItemGroup>
<ItemGroup>
<ProjectReference Include="UniTask.csproj">

View File

@ -806,12 +806,12 @@
<Reference Include="System.Xml.Serialization">
<HintPath>C:\APP\UnityEdit\2021.3.33f1c1\Editor\Data\NetStandard\compat\2.1.0\shims\netfx\System.Xml.Serialization.dll</HintPath>
</Reference>
<Reference Include="UnityEditor.UI">
<HintPath>D:\Jisol\JisolGame\JNFrame2\Library\ScriptAssemblies\UnityEditor.UI.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.UI">
<HintPath>D:\Jisol\JisolGame\JNFrame2\Library\ScriptAssemblies\UnityEngine.UI.dll</HintPath>
</Reference>
<Reference Include="UnityEditor.UI">
<HintPath>D:\Jisol\JisolGame\JNFrame2\Library\ScriptAssemblies\UnityEditor.UI.dll</HintPath>
</Reference>
</ItemGroup>
<ItemGroup>
<ProjectReference Include="UniTask.csproj">

View File

@ -826,12 +826,12 @@
<Reference Include="System.Xml.XPath.XDocument">
<HintPath>C:\APP\UnityEdit\2021.3.33f1c1\Editor\Data\UnityReferenceAssemblies\unity-4.8-api\Facades\System.Xml.XPath.XDocument.dll</HintPath>
</Reference>
<Reference Include="UnityEditor.UI">
<HintPath>D:\Jisol\JisolGame\JNFrame2\Library\ScriptAssemblies\UnityEditor.UI.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.UI">
<HintPath>D:\Jisol\JisolGame\JNFrame2\Library\ScriptAssemblies\UnityEngine.UI.dll</HintPath>
</Reference>
<Reference Include="UnityEditor.UI">
<HintPath>D:\Jisol\JisolGame\JNFrame2\Library\ScriptAssemblies\UnityEditor.UI.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.TestRunner">
<HintPath>D:\Jisol\JisolGame\JNFrame2\Library\ScriptAssemblies\UnityEngine.TestRunner.dll</HintPath>
</Reference>

View File

@ -878,12 +878,12 @@
<Reference Include="System.Xml.Serialization">
<HintPath>C:\APP\UnityEdit\2021.3.33f1c1\Editor\Data\NetStandard\compat\2.1.0\shims\netfx\System.Xml.Serialization.dll</HintPath>
</Reference>
<Reference Include="UnityEditor.UI">
<HintPath>D:\Jisol\JisolGame\JNFrame2\Library\ScriptAssemblies\UnityEditor.UI.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.UI">
<HintPath>D:\Jisol\JisolGame\JNFrame2\Library\ScriptAssemblies\UnityEngine.UI.dll</HintPath>
</Reference>
<Reference Include="UnityEditor.UI">
<HintPath>D:\Jisol\JisolGame\JNFrame2\Library\ScriptAssemblies\UnityEditor.UI.dll</HintPath>
</Reference>
</ItemGroup>
<ItemGroup>
<ProjectReference Include="UniTask.csproj">

View File

@ -810,12 +810,12 @@
<Reference Include="Unity.TextMeshPro">
<HintPath>D:\Jisol\JisolGame\JNFrame2\Library\ScriptAssemblies\Unity.TextMeshPro.dll</HintPath>
</Reference>
<Reference Include="UnityEditor.UI">
<HintPath>D:\Jisol\JisolGame\JNFrame2\Library\ScriptAssemblies\UnityEditor.UI.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.UI">
<HintPath>D:\Jisol\JisolGame\JNFrame2\Library\ScriptAssemblies\UnityEngine.UI.dll</HintPath>
</Reference>
<Reference Include="UnityEditor.UI">
<HintPath>D:\Jisol\JisolGame\JNFrame2\Library\ScriptAssemblies\UnityEditor.UI.dll</HintPath>
</Reference>
</ItemGroup>
<ItemGroup>
<ProjectReference Include="UniTask.csproj">

View File

@ -878,12 +878,12 @@
<Reference Include="System.Xml.Serialization">
<HintPath>C:\APP\UnityEdit\2021.3.33f1c1\Editor\Data\NetStandard\compat\2.1.0\shims\netfx\System.Xml.Serialization.dll</HintPath>
</Reference>
<Reference Include="UnityEditor.UI">
<HintPath>D:\Jisol\JisolGame\JNFrame2\Library\ScriptAssemblies\UnityEditor.UI.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.UI">
<HintPath>D:\Jisol\JisolGame\JNFrame2\Library\ScriptAssemblies\UnityEngine.UI.dll</HintPath>
</Reference>
<Reference Include="UnityEditor.UI">
<HintPath>D:\Jisol\JisolGame\JNFrame2\Library\ScriptAssemblies\UnityEditor.UI.dll</HintPath>
</Reference>
</ItemGroup>
<ItemGroup>
</ItemGroup>

View File

@ -119,7 +119,7 @@ MonoBehaviour:
m_MinSize: {x: 400, y: 200}
m_MaxSize: {x: 32384, y: 16192}
vertical: 0
controlID: 22
controlID: 82
--- !u!114 &6
MonoBehaviour:
m_ObjectHideFlags: 52
@ -144,7 +144,7 @@ MonoBehaviour:
m_MinSize: {x: 300, y: 200}
m_MaxSize: {x: 24288, y: 16192}
vertical: 1
controlID: 23
controlID: 83
--- !u!114 &7
MonoBehaviour:
m_ObjectHideFlags: 52
@ -170,7 +170,7 @@ MonoBehaviour:
m_MinSize: {x: 300, y: 100}
m_MaxSize: {x: 24288, y: 8096}
vertical: 0
controlID: 24
controlID: 28
--- !u!114 &8
MonoBehaviour:
m_ObjectHideFlags: 52
@ -243,8 +243,8 @@ MonoBehaviour:
y: 0
width: 609
height: 528
m_MinSize: {x: 102, y: 121}
m_MaxSize: {x: 4002, y: 4021}
m_MinSize: {x: 100, y: 100}
m_MaxSize: {x: 4000, y: 4000}
m_ActualView: {fileID: 20}
m_Panes:
- {fileID: 20}
@ -394,23 +394,23 @@ MonoBehaviour:
m_SceneHierarchy:
m_TreeViewState:
scrollPos: {x: 0, y: 0}
m_SelectedIDs:
m_LastClickedID: 0
m_ExpandedIDs: d2e4ffff28e5ffffe6e7ffffeae7ffff14eaffff6aeaffff28edffff2cedffffa8f6fffffef6ffffbcf9ffffc0f9ffff1afbffff
m_SelectedIDs: 169d0000
m_LastClickedID: 40214
m_ExpandedIDs: f2beffff0ecaffff64caffff22cdffff26cdffff94e1ffff80e5ffff26f6ffff7cf6ffff3af9ffff3ef9ffff1afbffff12910000ee9c0000
m_RenameOverlay:
m_UserAcceptedRename: 0
m_Name:
m_OriginalName:
m_Name: World
m_OriginalName: World
m_EditFieldRect:
serializedVersion: 2
x: 0
y: 0
width: 0
height: 0
m_UserData: 0
m_UserData: 40174
m_IsWaitingForDelay: 0
m_IsRenaming: 0
m_OriginalEventType: 11
m_OriginalEventType: 0
m_IsRenamingFilename: 0
m_ClientGUIView: {fileID: 8}
m_SearchString:
@ -734,9 +734,9 @@ MonoBehaviour:
m_PlayAudio: 0
m_AudioPlay: 0
m_Position:
m_Target: {x: 66.17166, y: 74.382965, z: -68.47802}
m_Target: {x: 104.11677, y: 87.14451, z: -68.7427}
speed: 2
m_Value: {x: 66.17166, y: 74.382965, z: -68.47802}
m_Value: {x: 104.11677, y: 87.14451, z: -68.7427}
m_RenderMode: 0
m_CameraMode:
drawMode: 0
@ -783,13 +783,13 @@ MonoBehaviour:
m_GridAxis: 1
m_gridOpacity: 0.5
m_Rotation:
m_Target: {x: -0.2639696, y: -0.106222175, z: 0.029262349, w: -0.95822775}
m_Target: {x: -0.35256705, y: -0.0022476835, z: 0.000847305, w: -0.9357961}
speed: 2
m_Value: {x: -0.26396698, y: -0.106221125, z: 0.02926206, w: -0.9582183}
m_Value: {x: -0.35256287, y: -0.002247657, z: 0.000847295, w: -0.93578506}
m_Size:
m_Target: 2.598076
m_Target: 0.8660254
speed: 2
m_Value: 2.598076
m_Value: 0.8660254
m_Ortho:
m_Target: 0
speed: 2
@ -897,9 +897,9 @@ MonoBehaviour:
m_IsLocked: 0
m_FolderTreeState:
scrollPos: {x: 0, y: 0}
m_SelectedIDs: 26e80000
m_LastClickedID: 59430
m_ExpandedIDs: 000000000a740000
m_SelectedIDs: 8e740000
m_LastClickedID: 29838
m_ExpandedIDs: 000000002274000000ca9a3b
m_RenameOverlay:
m_UserAcceptedRename: 0
m_Name:
@ -927,7 +927,7 @@ MonoBehaviour:
scrollPos: {x: 0, y: 0}
m_SelectedIDs:
m_LastClickedID: 0
m_ExpandedIDs: 000000000a740000
m_ExpandedIDs: 0000000022740000
m_RenameOverlay:
m_UserAcceptedRename: 0
m_Name:
@ -952,9 +952,9 @@ MonoBehaviour:
m_Icon: {fileID: 0}
m_ResourceFile:
m_ListAreaState:
m_SelectedInstanceIDs: f62f0100
m_LastClickedInstanceID: 77814
m_HadKeyboardFocusLastEvent: 0
m_SelectedInstanceIDs: ce2e0000
m_LastClickedInstanceID: 11982
m_HadKeyboardFocusLastEvent: 1
m_ExpandedInstanceIDs: c623000000000000
m_RenameOverlay:
m_UserAcceptedRename: 0