Merge branch 'master' of https://git.bobsong.cn/Game/Fishing2
This commit is contained in:
8
Assets/Scripts/Fishing/Data/States.meta
Normal file
8
Assets/Scripts/Fishing/Data/States.meta
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 8a7d330458276bb4ca48095942cc62da
|
||||||
|
folderAsset: yes
|
||||||
|
DefaultImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
3
Assets/Scripts/Fishing/New/Data/Item.meta
Normal file
3
Assets/Scripts/Fishing/New/Data/Item.meta
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: c67e0c4e3e30462d88970a3c0b4569e8
|
||||||
|
timeCreated: 1773123725
|
||||||
70
Assets/Scripts/Fishing/New/Data/Item/PlayerItem.cs
Normal file
70
Assets/Scripts/Fishing/New/Data/Item/PlayerItem.cs
Normal file
@@ -0,0 +1,70 @@
|
|||||||
|
using System.Collections.Generic;
|
||||||
|
using Fantasy;
|
||||||
|
using Fantasy.Entitas;
|
||||||
|
using NBF.Utils;
|
||||||
|
using UnityEngine;
|
||||||
|
|
||||||
|
namespace NBF
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// 玩家物品
|
||||||
|
/// </summary>
|
||||||
|
public class PlayerItem : Entity
|
||||||
|
{
|
||||||
|
public Player Owner;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 配置id
|
||||||
|
/// </summary>
|
||||||
|
public int ConfigID;
|
||||||
|
|
||||||
|
public List<int> BindItems = new List<int>();
|
||||||
|
|
||||||
|
#region Rod专属
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 线长度
|
||||||
|
/// </summary>
|
||||||
|
public float LineLength = 1.5f;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 浮漂线长度
|
||||||
|
/// </summary>
|
||||||
|
public float FloatLength = 0.5f;
|
||||||
|
|
||||||
|
private float _tension;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 拉力
|
||||||
|
/// </summary>
|
||||||
|
public float Tension
|
||||||
|
{
|
||||||
|
get => _tension;
|
||||||
|
private set
|
||||||
|
{
|
||||||
|
if (!Mathf.Approximately(_tension, value))
|
||||||
|
{
|
||||||
|
_tension = value;
|
||||||
|
// OnTensionChanged?.Invoke(_tension);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
|
||||||
|
public void Init(Player player, int configId, List<int> bindItems)
|
||||||
|
{
|
||||||
|
Owner = player;
|
||||||
|
ConfigID = configId;
|
||||||
|
BindItems.Clear();
|
||||||
|
BindItems.AddRange(bindItems);
|
||||||
|
// var itemType = bindInfo.Item.GetItemType();
|
||||||
|
// if (itemType == ItemType.Rod)
|
||||||
|
// {
|
||||||
|
// var rod = AddComponent<PlayerItemRod>();
|
||||||
|
// rod.Init(bindInfo);
|
||||||
|
// }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -2,17 +2,24 @@
|
|||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using Fantasy;
|
using Fantasy;
|
||||||
using Fantasy.Entitas;
|
using Fantasy.Entitas;
|
||||||
|
using NBF.Utils;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
|
|
||||||
namespace NBF
|
namespace NBF
|
||||||
{
|
{
|
||||||
public class Player : Entity
|
public class Player : Entity
|
||||||
{
|
{
|
||||||
|
// ========== 本地状态 ==========
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 是否本地玩家
|
/// 是否本地玩家
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public bool IsLocalPlayer;
|
public bool IsLocalPlayer;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 是否切换物品中
|
||||||
|
/// </summary>
|
||||||
|
public bool IsChangeItemIng;
|
||||||
|
|
||||||
public bool IsLureRod => false;
|
public bool IsLureRod => false;
|
||||||
|
|
||||||
public bool IsSelf => RoleModel.Instance.Id == Id;
|
public bool IsSelf => RoleModel.Instance.Id == Id;
|
||||||
@@ -61,18 +68,20 @@ namespace NBF
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// 当前手持物品
|
/// 当前手持物品
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public PlayerItem HandItem => Items[HandItemId];
|
public PlayerItem HandItem => Items.GetValueOrDefault(HandItemId);
|
||||||
|
|
||||||
#region 初始化
|
#region 初始化
|
||||||
|
|
||||||
public void InitPlayer(MapUnitInfo unitInfo)
|
public void InitPlayer(MapUnitInfo unitInfo)
|
||||||
{
|
{
|
||||||
AddComponent<PlayerViewComponent>();
|
PreviousState = PlayerState.None;
|
||||||
AddComponent<PlayerStateViewComponent>();
|
State = PlayerState.Idle;
|
||||||
|
AddComponent<PlayerView>();
|
||||||
|
AddComponent<PlayerStateView>();
|
||||||
if (unitInfo.Id == RoleModel.Instance.Id)
|
if (unitInfo.Id == RoleModel.Instance.Id)
|
||||||
{
|
{
|
||||||
//自己
|
//自己
|
||||||
AddComponent<PlayerInputComponent>();
|
AddComponent<PlayerInput>();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -80,29 +89,39 @@ namespace NBF
|
|||||||
|
|
||||||
#region 物品
|
#region 物品
|
||||||
|
|
||||||
public void UnUseItem()
|
public void ReleaseItem(PlayerItem item)
|
||||||
{
|
{
|
||||||
if (Items.TryGetValue(HandItemId, out var item))
|
if (Items.ContainsValue(item))
|
||||||
{
|
{
|
||||||
|
Items.Remove(item.Id);
|
||||||
item.Dispose();
|
item.Dispose();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void UnUseItem()
|
||||||
|
{
|
||||||
|
var prevItem = HandItem;
|
||||||
HandItemId = 0;
|
HandItemId = 0;
|
||||||
ItemChangeEvent();
|
ItemChangeEvent(prevItem);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void UseItem(ItemBindInfo item)
|
public void UseItem(int configId, List<int> bindItems)
|
||||||
{
|
{
|
||||||
var playerItem = Create<PlayerItem>(Scene);
|
var prevItem = HandItem;
|
||||||
playerItem.Init(item);
|
var playerItemRod = Create<PlayerItem>(Scene);
|
||||||
ItemChangeEvent();
|
playerItemRod.Init(this, configId, bindItems);
|
||||||
|
Items[playerItemRod.Id] = playerItemRod;
|
||||||
|
HandItemId = playerItemRod.Id;
|
||||||
|
ItemChangeEvent(prevItem);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void ItemChangeEvent()
|
private void ItemChangeEvent(PlayerItem prevItem)
|
||||||
{
|
{
|
||||||
Scene.EventComponent.Publish(new PlayerStateChangeEvent
|
Scene.EventComponent.Publish(new PlayerItemChangeEvent
|
||||||
{
|
{
|
||||||
Player = this
|
Player = this,
|
||||||
|
Item = HandItem,
|
||||||
|
PrevItem = prevItem
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,25 +0,0 @@
|
|||||||
using System.Collections.Generic;
|
|
||||||
using Fantasy;
|
|
||||||
using Fantasy.Entitas;
|
|
||||||
|
|
||||||
namespace NBF
|
|
||||||
{
|
|
||||||
public class PlayerItem : Entity
|
|
||||||
{
|
|
||||||
/// <summary>
|
|
||||||
/// 配置id
|
|
||||||
/// </summary>
|
|
||||||
public int ConfigID;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// 绑定的子物体
|
|
||||||
/// </summary>
|
|
||||||
public List<int> BindItems = new List<int>();
|
|
||||||
|
|
||||||
public void Init(ItemBindInfo bindInfo)
|
|
||||||
{
|
|
||||||
ConfigID = bindInfo.Item;
|
|
||||||
BindItems.AddRange(bindInfo.BindItems);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,3 +1,3 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: 172aa8a5a1444ccbad1647479739c232
|
guid: a348fcaa64274862baa542a3dc1ffc62
|
||||||
timeCreated: 1773060255
|
timeCreated: 1773117606
|
||||||
@@ -1,12 +1,15 @@
|
|||||||
namespace NBF
|
namespace NBF
|
||||||
{
|
{
|
||||||
public struct PlayerStateChangeEvent
|
public struct PlayerStateChangeEvent
|
||||||
{
|
{
|
||||||
public Player Player;
|
public Player Player;
|
||||||
}
|
}
|
||||||
|
|
||||||
public struct PlayerItemChangeEvent
|
|
||||||
|
public struct PlayerItemChangeEvent
|
||||||
{
|
{
|
||||||
public Player Player;
|
public Player Player;
|
||||||
|
public PlayerItem Item;
|
||||||
|
public PlayerItem PrevItem;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1,13 +0,0 @@
|
|||||||
using Fantasy.Event;
|
|
||||||
|
|
||||||
namespace NBF.Handle
|
|
||||||
{
|
|
||||||
public class OnPlayerStateChangeEvent : EventSystem<PlayerStateChangeEvent>
|
|
||||||
{
|
|
||||||
protected override void Handler(PlayerStateChangeEvent self)
|
|
||||||
{
|
|
||||||
var view = self.Player.GetOrAddComponent<PlayerItemViewComponent>();
|
|
||||||
view.ShowItem();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
3
Assets/Scripts/Fishing/New/View/Player.meta
Normal file
3
Assets/Scripts/Fishing/New/View/Player.meta
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: b7a71b6539c547fcaab2b89279530aef
|
||||||
|
timeCreated: 1773116602
|
||||||
@@ -0,0 +1,13 @@
|
|||||||
|
using Fantasy.Event;
|
||||||
|
|
||||||
|
namespace NBF.Handle
|
||||||
|
{
|
||||||
|
public class OnPlayerStateChangeEvent : EventSystem<PlayerItemChangeEvent>
|
||||||
|
{
|
||||||
|
protected override void Handler(PlayerItemChangeEvent self)
|
||||||
|
{
|
||||||
|
var view = self.Player.GetOrAddComponent<PlayerView>();
|
||||||
|
view.ChangeItem(self).Coroutine();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
3
Assets/Scripts/Fishing/New/View/Player/Item.meta
Normal file
3
Assets/Scripts/Fishing/New/View/Player/Item.meta
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 1f9c361f2958454abb43724693a2157a
|
||||||
|
timeCreated: 1773116527
|
||||||
@@ -0,0 +1,28 @@
|
|||||||
|
using Fantasy.Async;
|
||||||
|
using Fantasy.Entitas;
|
||||||
|
using UnityEngine;
|
||||||
|
|
||||||
|
namespace NBF
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// 玩家物品视图组件
|
||||||
|
/// </summary>
|
||||||
|
public class PlayerItemView : Entity
|
||||||
|
{
|
||||||
|
public PlayerItem Item { get; protected set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 竿子
|
||||||
|
/// </summary>
|
||||||
|
public FRod Rod { get; private set; }
|
||||||
|
|
||||||
|
public async FTask InitShow(PlayerItem item)
|
||||||
|
{
|
||||||
|
Item = item;
|
||||||
|
var itemConfig = Game.Tables.TbItem.Get(Item.ConfigID);
|
||||||
|
Rod = itemConfig.InstantiateAndComponent<FRod>(SceneSettings.Instance.GearNode, Vector3.zero,
|
||||||
|
Quaternion.identity);
|
||||||
|
await Rod.InitRod(Item);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 98838cf2cf934b8aaaf97f4d58544055
|
||||||
|
timeCreated: 1773116536
|
||||||
@@ -1,6 +1,7 @@
|
|||||||
using System;
|
using System;
|
||||||
using KINEMATION.MagicBlend.Runtime;
|
using KINEMATION.MagicBlend.Runtime;
|
||||||
using NBC;
|
using NBC;
|
||||||
|
using NBF.Utils;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
|
|
||||||
namespace NBF
|
namespace NBF
|
||||||
@@ -83,35 +84,23 @@ namespace NBF
|
|||||||
_Animator.keepAnimatorStateOnDisable = true;
|
_Animator.keepAnimatorStateOnDisable = true;
|
||||||
_IK = GetComponent<PlayerIK>();
|
_IK = GetComponent<PlayerIK>();
|
||||||
_isInit = true;
|
_isInit = true;
|
||||||
// Player.OnFishingSetEquiped += OnFishingSetEquiped_OnRaised;
|
|
||||||
// Player.OnFishingSetUnequip += OnFishingSetUnequip;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public void OnUnUseItem()
|
||||||
private void OnDestroy()
|
|
||||||
{
|
|
||||||
// Player.OnFishingSetEquiped -= OnFishingSetEquiped_OnRaised;
|
|
||||||
// Player.OnFishingSetUnequip -= OnFishingSetUnequip;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
private void OnFishingSetUnequip()
|
|
||||||
{
|
{
|
||||||
_isRodLayerEnabled = false;
|
_isRodLayerEnabled = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
private void OnFishingSetEquiped_OnRaised(FHandItem item)
|
public void OnUseItem(PlayerItemView item)
|
||||||
{
|
{
|
||||||
if (item is FRod rod)
|
var itemType = item.Item.ConfigID.GetItemType();
|
||||||
|
if (itemType == ItemType.Rod)
|
||||||
{
|
{
|
||||||
_isRodLayerEnabled = true;
|
_isRodLayerEnabled = true;
|
||||||
// var reel = Player.Rod.Reel;
|
|
||||||
// _IK.SetBipedLeftHandIK(enabled: false, reel.FingersIKAnchor);
|
// _IK.SetBipedLeftHandIK(enabled: false, reel.FingersIKAnchor);
|
||||||
}
|
}
|
||||||
else
|
|
||||||
{
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -1,4 +1,6 @@
|
|||||||
using Fantasy;
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using Fantasy;
|
||||||
using Fantasy.Entitas;
|
using Fantasy.Entitas;
|
||||||
using Fantasy.Entitas.Interface;
|
using Fantasy.Entitas.Interface;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
@@ -7,34 +9,34 @@ using Log = NBC.Log;
|
|||||||
|
|
||||||
namespace NBF
|
namespace NBF
|
||||||
{
|
{
|
||||||
public class PlayerInputComponent : Entity
|
public class PlayerInput : Entity
|
||||||
{
|
{
|
||||||
public Player Player { get; private set; }
|
public Player Player { get; private set; }
|
||||||
public PlayerViewComponent View { get; private set; }
|
public PlayerView View { get; private set; }
|
||||||
|
|
||||||
#region 生命周期
|
#region 生命周期
|
||||||
|
|
||||||
public class PlayerViewAwakeSystem : AwakeSystem<PlayerInputComponent>
|
public class PlayerViewAwakeSystem : AwakeSystem<PlayerInput>
|
||||||
{
|
{
|
||||||
protected override void Awake(PlayerInputComponent self)
|
protected override void Awake(PlayerInput self)
|
||||||
{
|
{
|
||||||
self.Player = self.GetParent<Player>();
|
self.Player = self.GetParent<Player>();
|
||||||
self.View = self.Player.GetComponent<PlayerViewComponent>();
|
self.View = self.Player.GetComponent<PlayerView>();
|
||||||
self.AddInputEvent();
|
self.AddInputEvent();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public class PlayerViewUpdateSystem : UpdateSystem<PlayerInputComponent>
|
public class PlayerViewUpdateSystem : UpdateSystem<PlayerInput>
|
||||||
{
|
{
|
||||||
protected override void Update(PlayerInputComponent self)
|
protected override void Update(PlayerInput self)
|
||||||
{
|
{
|
||||||
self.UpdateMove();
|
self.UpdateMove();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public class PlayerViewDestroySystem : DestroySystem<PlayerInputComponent>
|
public class PlayerViewDestroySystem : DestroySystem<PlayerInput>
|
||||||
{
|
{
|
||||||
protected override void Destroy(PlayerInputComponent self)
|
protected override void Destroy(PlayerInput self)
|
||||||
{
|
{
|
||||||
self.RemoveInputEvent();
|
self.RemoveInputEvent();
|
||||||
}
|
}
|
||||||
@@ -90,15 +92,9 @@ namespace NBF
|
|||||||
var item = RoleModel.Instance.GetSlotItem(index - 1);
|
var item = RoleModel.Instance.GetSlotItem(index - 1);
|
||||||
if (item != null)
|
if (item != null)
|
||||||
{
|
{
|
||||||
var itemBindInfo = ItemBindInfo.Create();
|
List<ItemInfo> children = RoleModel.Instance.GetBindItems(item.Id);
|
||||||
itemBindInfo.Item = item.ConfigId;
|
List<int> bindItems = children.Select(itemInfo => itemInfo.ConfigId).ToList();
|
||||||
var binds = RoleModel.Instance.GetBindItems(item.Id);
|
Player.UseItem(item.ConfigId, bindItems);
|
||||||
foreach (var itemInfo in binds)
|
|
||||||
{
|
|
||||||
itemBindInfo.BindItems.Add(itemInfo.ConfigId);
|
|
||||||
}
|
|
||||||
|
|
||||||
Player.UseItem(itemBindInfo);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -8,7 +8,7 @@ namespace NBF
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// 状态显示层组件
|
/// 状态显示层组件
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public class PlayerStateViewComponent : Entity
|
public class PlayerStateView : Entity
|
||||||
{
|
{
|
||||||
private readonly Dictionary<PlayerState, PlayerStageViewBase> _stageViews =
|
private readonly Dictionary<PlayerState, PlayerStageViewBase> _stageViews =
|
||||||
new Dictionary<PlayerState, PlayerStageViewBase>();
|
new Dictionary<PlayerState, PlayerStageViewBase>();
|
||||||
@@ -28,6 +28,8 @@ namespace NBF
|
|||||||
{
|
{
|
||||||
playerStageView.Init(_player);
|
playerStageView.Init(_player);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
OnStageChange();
|
||||||
}
|
}
|
||||||
|
|
||||||
public void Update()
|
public void Update()
|
||||||
@@ -43,21 +45,21 @@ namespace NBF
|
|||||||
}
|
}
|
||||||
|
|
||||||
_currentStateView = _stageViews.GetValueOrDefault(_player.State);
|
_currentStateView = _stageViews.GetValueOrDefault(_player.State);
|
||||||
_currentStateView.Enter(_player.StateParams, _player.PreviousState);
|
_currentStateView?.Enter(_player.StateParams, _player.PreviousState);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public class PlayerStateViewComponentAwakeSystem : AwakeSystem<PlayerStateViewComponent>
|
public class PlayerStateViewComponentAwakeSystem : AwakeSystem<PlayerStateView>
|
||||||
{
|
{
|
||||||
protected override void Awake(PlayerStateViewComponent self)
|
protected override void Awake(PlayerStateView self)
|
||||||
{
|
{
|
||||||
self.Awake();
|
self.Awake();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public class PlayerStateViewComponentUpdateSystem : UpdateSystem<PlayerStateViewComponent>
|
public class PlayerStateViewComponentUpdateSystem : UpdateSystem<PlayerStateView>
|
||||||
{
|
{
|
||||||
protected override void Update(PlayerStateViewComponent self)
|
protected override void Update(PlayerStateView self)
|
||||||
{
|
{
|
||||||
self.Update();
|
self.Update();
|
||||||
}
|
}
|
||||||
@@ -67,7 +69,7 @@ namespace NBF
|
|||||||
{
|
{
|
||||||
protected override void Handler(PlayerStateChangeEvent self)
|
protected override void Handler(PlayerStateChangeEvent self)
|
||||||
{
|
{
|
||||||
var stateView = self.Player.GetComponent<PlayerStateViewComponent>();
|
var stateView = self.Player.GetComponent<PlayerStateView>();
|
||||||
if (stateView != null)
|
if (stateView != null)
|
||||||
{
|
{
|
||||||
stateView.OnStageChange();
|
stateView.OnStageChange();
|
||||||
150
Assets/Scripts/Fishing/New/View/Player/PlayerView.cs
Normal file
150
Assets/Scripts/Fishing/New/View/Player/PlayerView.cs
Normal file
@@ -0,0 +1,150 @@
|
|||||||
|
using Fantasy.Async;
|
||||||
|
using Fantasy.Entitas;
|
||||||
|
using Fantasy.Entitas.Interface;
|
||||||
|
using NBF.Fishing2;
|
||||||
|
using NBF.Utils;
|
||||||
|
using UnityEngine;
|
||||||
|
|
||||||
|
namespace NBF
|
||||||
|
{
|
||||||
|
public class PlayerView : Entity
|
||||||
|
{
|
||||||
|
public Player Player { get; private set; }
|
||||||
|
|
||||||
|
public PlayerUnityComponent Unity { get; private set; }
|
||||||
|
|
||||||
|
#region 生命周期
|
||||||
|
|
||||||
|
public void Awake()
|
||||||
|
{
|
||||||
|
Player = GetParent<Player>();
|
||||||
|
var gameObject = PrefabsHelper.CreatePlayer(SceneSettings.Instance.Node);
|
||||||
|
Unity = gameObject.GetComponent<PlayerUnityComponent>();
|
||||||
|
Unity.Player = Player;
|
||||||
|
CreatePlayerModel();
|
||||||
|
if (Player.IsSelf)
|
||||||
|
{
|
||||||
|
CameraManager.Instance.SetFppLook(Unity);
|
||||||
|
}
|
||||||
|
|
||||||
|
Unity.transform.localPosition = new Vector3(484, 1, 422);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void Update()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
public void LateUpdate()
|
||||||
|
{
|
||||||
|
Player.EyeAngle = GameUtils.GetVerticalAngle(Unity.transform, Unity.FppLook);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void Destroy()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
#region 模型创建
|
||||||
|
|
||||||
|
private void CreatePlayerModel()
|
||||||
|
{
|
||||||
|
var modelObject = PrefabsHelper.CreatePlayer(Unity.Root, "Human_Male");
|
||||||
|
modelObject.transform.localPosition = new Vector3(0, 1, 0);
|
||||||
|
Unity.ModelAsset = modelObject.GetComponent<PlayerModelAsset>();
|
||||||
|
Unity.ModelAsset.SetPlayer(Unity.FppLook);
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
#region 物品切换
|
||||||
|
|
||||||
|
public async FTask ChangeItem(PlayerItemChangeEvent playerStateChangeEvent)
|
||||||
|
{
|
||||||
|
var prevItem = playerStateChangeEvent.PrevItem;
|
||||||
|
var currItem = playerStateChangeEvent.Item;
|
||||||
|
if (Player.IsChangeItemIng) return;
|
||||||
|
Player.IsChangeItemIng = true;
|
||||||
|
if (currItem == null)
|
||||||
|
{
|
||||||
|
//收起物品
|
||||||
|
await UnUseItem(prevItem);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
// 先收起旧的物品
|
||||||
|
await UnUseItemConfirm(prevItem);
|
||||||
|
var handItem = Player.HandItem;
|
||||||
|
//拿起新物品
|
||||||
|
var itemType = handItem.ConfigID.GetItemType();
|
||||||
|
if (itemType == ItemType.Rod)
|
||||||
|
{
|
||||||
|
var itemView = handItem.GetOrAddComponent<PlayerItemView>();
|
||||||
|
await itemView.InitShow(handItem);
|
||||||
|
Unity.ModelAsset.PlayerAnimator.OnUseItem(itemView);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
Player.IsChangeItemIng = false;
|
||||||
|
}
|
||||||
|
|
||||||
|
#region 使用物品
|
||||||
|
|
||||||
|
public async FTask UnUseItem(PlayerItem item)
|
||||||
|
{
|
||||||
|
if (item == null) return;
|
||||||
|
if (Player.IsChangeItemIng) return;
|
||||||
|
Player.IsChangeItemIng = true;
|
||||||
|
await UnUseItemConfirm(item);
|
||||||
|
Player.IsChangeItemIng = false;
|
||||||
|
}
|
||||||
|
|
||||||
|
private async FTask UnUseItemConfirm(PlayerItem item)
|
||||||
|
{
|
||||||
|
if (item != null)
|
||||||
|
{
|
||||||
|
Unity.ModelAsset.PlayerAnimator.OnUnUseItem();
|
||||||
|
await FTask.Wait(Scene, 100);
|
||||||
|
}
|
||||||
|
|
||||||
|
Player.ReleaseItem(item);
|
||||||
|
await FTask.Wait(Scene, 450);
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
}
|
||||||
|
|
||||||
|
public class PlayerViewAwakeSystem : AwakeSystem<PlayerView>
|
||||||
|
{
|
||||||
|
protected override void Awake(PlayerView self)
|
||||||
|
{
|
||||||
|
self.Awake();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public class PlayerViewDestroySystem : DestroySystem<PlayerView>
|
||||||
|
{
|
||||||
|
protected override void Destroy(PlayerView self)
|
||||||
|
{
|
||||||
|
self.Destroy();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public class PlayerViewUpdateSystem : UpdateSystem<PlayerView>
|
||||||
|
{
|
||||||
|
protected override void Update(PlayerView self)
|
||||||
|
{
|
||||||
|
self.Update();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public class PlayerViewLateUpdateSystem : LateUpdateSystem<PlayerView>
|
||||||
|
{
|
||||||
|
protected override void LateUpdate(PlayerView self)
|
||||||
|
{
|
||||||
|
self.LateUpdate();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -1,11 +1,12 @@
|
|||||||
using UnityEngine;
|
using NBC;
|
||||||
|
using UnityEngine;
|
||||||
|
|
||||||
namespace NBF
|
namespace NBF
|
||||||
{
|
{
|
||||||
public abstract class PlayerStageViewBase
|
public abstract class PlayerStageViewBase
|
||||||
{
|
{
|
||||||
public Player Player { get; private set; }
|
public Player Player { get; private set; }
|
||||||
public PlayerViewComponent PlayerView { get; private set; }
|
public PlayerView PlayerView { get; private set; }
|
||||||
protected float EnterTime { get; set; }
|
protected float EnterTime { get; set; }
|
||||||
|
|
||||||
protected PlayerState PreviousState { get; private set; }
|
protected PlayerState PreviousState { get; private set; }
|
||||||
@@ -14,7 +15,7 @@ namespace NBF
|
|||||||
public void Init(Player player)
|
public void Init(Player player)
|
||||||
{
|
{
|
||||||
Player = player;
|
Player = player;
|
||||||
PlayerView = player.GetComponent<PlayerViewComponent>();
|
PlayerView = player.GetComponent<PlayerView>();
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -30,6 +31,7 @@ namespace NBF
|
|||||||
|
|
||||||
public void Enter(StateEnterParams par = null, PlayerState prevState = PlayerState.None)
|
public void Enter(StateEnterParams par = null, PlayerState prevState = PlayerState.None)
|
||||||
{
|
{
|
||||||
|
Log.Info($"进入状态={GetType()}");
|
||||||
Params = par;
|
Params = par;
|
||||||
PreviousState = prevState;
|
PreviousState = prevState;
|
||||||
EnterTime = Time.time;
|
EnterTime = Time.time;
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
using UnityEngine;
|
||||||
|
|
||||||
|
namespace NBF
|
||||||
|
{
|
||||||
|
public abstract class FHandItem : MonoBehaviour
|
||||||
|
{
|
||||||
|
public abstract int ConfigId { get; }
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -2,6 +2,7 @@
|
|||||||
using System.Collections;
|
using System.Collections;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using Fantasy;
|
using Fantasy;
|
||||||
|
using Fantasy.Async;
|
||||||
using NBC.Asset;
|
using NBC.Asset;
|
||||||
using NBF.Utils;
|
using NBF.Utils;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
@@ -13,6 +14,10 @@ namespace NBF
|
|||||||
{
|
{
|
||||||
private float _tension;
|
private float _tension;
|
||||||
|
|
||||||
|
public PlayerItem PlayerItem;
|
||||||
|
|
||||||
|
public override int ConfigId => PlayerItem?.ConfigID ?? 0;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 可用的
|
/// 可用的
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@@ -122,12 +127,11 @@ namespace NBF
|
|||||||
yield return 1;
|
yield return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
public IEnumerator InitRod(Player player, ItemBindInfo itemBindInfo)
|
public async FTask InitRod(PlayerItem playerItem)
|
||||||
{
|
{
|
||||||
ConfigId = itemBindInfo.Item;
|
PlayerItem = playerItem;
|
||||||
// Player = player;
|
|
||||||
|
|
||||||
var playerView = player.GetComponent<PlayerViewComponent>();
|
var playerView = playerItem.Owner.GetComponent<PlayerView>();
|
||||||
|
|
||||||
var playerViewUnity = playerView.Unity;
|
var playerViewUnity = playerView.Unity;
|
||||||
|
|
||||||
@@ -135,7 +139,8 @@ namespace NBF
|
|||||||
transform.localRotation = Quaternion.identity;
|
transform.localRotation = Quaternion.identity;
|
||||||
transform.localScale = Vector3.one;
|
transform.localScale = Vector3.one;
|
||||||
SceneSettings.Instance.GearNode.position = playerViewUnity.transform.position;
|
SceneSettings.Instance.GearNode.position = playerViewUnity.transform.position;
|
||||||
yield return 1;
|
await FTask.WaitFrame(playerView.Scene); //等待1帧
|
||||||
|
|
||||||
var obj = new GameObject($"rod_{ConfigId}");
|
var obj = new GameObject($"rod_{ConfigId}");
|
||||||
obj.transform.SetParent(SceneSettings.Instance.GearNode);
|
obj.transform.SetParent(SceneSettings.Instance.GearNode);
|
||||||
// obj.transform.SetParent(player.transform);
|
// obj.transform.SetParent(player.transform);
|
||||||
@@ -149,11 +154,10 @@ namespace NBF
|
|||||||
|
|
||||||
// List<ItemInfo> children = RoleModel.Instance.GetBindItems(itemInfo.Id);
|
// List<ItemInfo> children = RoleModel.Instance.GetBindItems(itemInfo.Id);
|
||||||
|
|
||||||
|
|
||||||
CreateFishingHandler();
|
CreateFishingHandler();
|
||||||
yield return 1; //等待1帧
|
await FTask.WaitFrame(playerView.Scene); //等待1帧
|
||||||
// children.Sort();
|
// children.Sort();
|
||||||
foreach (var childConfigId in itemBindInfo.BindItems)
|
foreach (var childConfigId in playerItem.BindItems)
|
||||||
{
|
{
|
||||||
var itemType = childConfigId.GetItemType();
|
var itemType = childConfigId.GetItemType();
|
||||||
var config = Game.Tables.TbItem.Get(childConfigId);
|
var config = Game.Tables.TbItem.Get(childConfigId);
|
||||||
@@ -199,7 +203,7 @@ namespace NBF
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
yield return 1;
|
await FTask.WaitFrame(playerView.Scene); //等待1帧
|
||||||
if (Reel)
|
if (Reel)
|
||||||
{
|
{
|
||||||
Reel.reelingDrag = 0.699f;
|
Reel.reelingDrag = 0.699f;
|
||||||
@@ -234,7 +238,7 @@ namespace NBF
|
|||||||
Weight.Init(this);
|
Weight.Init(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
yield return 1; //等待1帧
|
await FTask.WaitFrame(playerView.Scene); //等待1帧
|
||||||
|
|
||||||
transform.SetParent(playerViewUnity.ModelAsset.RodRoot);
|
transform.SetParent(playerViewUnity.ModelAsset.RodRoot);
|
||||||
transform.localPosition = Vector3.zero;
|
transform.localPosition = Vector3.zero;
|
||||||
@@ -284,11 +288,6 @@ namespace NBF
|
|||||||
Line = obj.GetComponent<FLine>();
|
Line = obj.GetComponent<FLine>();
|
||||||
Line.transform.position = Asset.lineConnector.position;
|
Line.transform.position = Asset.lineConnector.position;
|
||||||
Line.Init(this);
|
Line.Init(this);
|
||||||
|
|
||||||
// var obiSolver = solver.GetComponent<ObiSolver>();
|
|
||||||
// obiSolver.parameters.ambientWind = Vector3.zero;
|
|
||||||
// obiSolver.wind.
|
|
||||||
// obiSolver.simulateWhenInvisible
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1,67 +0,0 @@
|
|||||||
using System.Collections;
|
|
||||||
using Fantasy.Entitas;
|
|
||||||
|
|
||||||
namespace NBF
|
|
||||||
{
|
|
||||||
public class PlayerItemViewComponent : Entity
|
|
||||||
{
|
|
||||||
public void ShowItem()
|
|
||||||
{
|
|
||||||
// Game.Instance.StartCoroutine()
|
|
||||||
}
|
|
||||||
|
|
||||||
#region 使用物品
|
|
||||||
|
|
||||||
// public IEnumerator UseItem(ItemInfo item)
|
|
||||||
// {
|
|
||||||
// if (Data.ChangeItem) yield break;
|
|
||||||
// Data.ChangeItem = true;
|
|
||||||
// var itemType = item?.ConfigId.GetItemType();
|
|
||||||
// if (itemType == ItemType.Rod)
|
|
||||||
// {
|
|
||||||
// //判断旧的是否要收回
|
|
||||||
// yield return UnUseItemConfirm();
|
|
||||||
//
|
|
||||||
// Data.IsLureRod = true;
|
|
||||||
// var rodType = (ItemSubType)item.Config.Type;
|
|
||||||
// if (rodType == ItemSubType.RodTele)
|
|
||||||
// {
|
|
||||||
// Data.IsLureRod = false;
|
|
||||||
// }
|
|
||||||
//
|
|
||||||
// Rod =
|
|
||||||
// item.Config.InstantiateAndComponent<FRod>(SceneSettings.Instance.GearNode, Vector3.zero,
|
|
||||||
// Quaternion.identity);
|
|
||||||
// yield return Rod.InitRod(this, item);
|
|
||||||
// Tackles.Add(Rod);
|
|
||||||
// OnFishingSetEquiped?.Invoke(Rod);
|
|
||||||
// }
|
|
||||||
//
|
|
||||||
// Data.ChangeItem = false;
|
|
||||||
// }
|
|
||||||
//
|
|
||||||
// public IEnumerator UnUseItem()
|
|
||||||
// {
|
|
||||||
// if (Data.ChangeItem) yield break;
|
|
||||||
// Data.ChangeItem = true;
|
|
||||||
// yield return UnUseItemConfirm();
|
|
||||||
// Data.ChangeItem = false;
|
|
||||||
// }
|
|
||||||
//
|
|
||||||
// private IEnumerator UnUseItemConfirm()
|
|
||||||
// {
|
|
||||||
// if (Rod != null)
|
|
||||||
// {
|
|
||||||
// OnFishingSetUnequip?.Invoke();
|
|
||||||
// yield return Rod.Destroy();
|
|
||||||
// yield return new WaitForSeconds(0.35f);
|
|
||||||
// Destroy(Rod.gameObject);
|
|
||||||
// Tackles.Remove(Rod);
|
|
||||||
// Rod = null;
|
|
||||||
// yield return new WaitForSeconds(0.15f);
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
|
|
||||||
#endregion
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: cf5f405feb8f431ea52d8f33b3cb2e29
|
|
||||||
timeCreated: 1773069665
|
|
||||||
@@ -1,90 +0,0 @@
|
|||||||
using Fantasy.Entitas;
|
|
||||||
using Fantasy.Entitas.Interface;
|
|
||||||
using NBF.Fishing2;
|
|
||||||
using UnityEngine;
|
|
||||||
|
|
||||||
namespace NBF
|
|
||||||
{
|
|
||||||
public class PlayerViewComponent : Entity
|
|
||||||
{
|
|
||||||
public Player Player { get; private set; }
|
|
||||||
|
|
||||||
public PlayerUnityComponent Unity { get; private set; }
|
|
||||||
|
|
||||||
#region 生命周期
|
|
||||||
|
|
||||||
public void Awake()
|
|
||||||
{
|
|
||||||
Player = GetParent<Player>();
|
|
||||||
var gameObject = PrefabsHelper.CreatePlayer(SceneSettings.Instance.Node);
|
|
||||||
Unity = gameObject.GetComponent<PlayerUnityComponent>();
|
|
||||||
Unity.Player = Player;
|
|
||||||
CreatePlayerModel();
|
|
||||||
if (Player.IsSelf)
|
|
||||||
{
|
|
||||||
CameraManager.Instance.SetFppLook(Unity);
|
|
||||||
}
|
|
||||||
|
|
||||||
Unity.transform.localPosition = new Vector3(484, 1, 422);
|
|
||||||
}
|
|
||||||
|
|
||||||
public void Update()
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
public void LateUpdate()
|
|
||||||
{
|
|
||||||
Player.EyeAngle = GameUtils.GetVerticalAngle(Unity.transform, Unity.FppLook);
|
|
||||||
}
|
|
||||||
|
|
||||||
public void Destroy()
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
#endregion
|
|
||||||
|
|
||||||
#region 模型创建
|
|
||||||
|
|
||||||
private void CreatePlayerModel()
|
|
||||||
{
|
|
||||||
var modelObject = PrefabsHelper.CreatePlayer(Unity.Root, "Human_Male");
|
|
||||||
modelObject.transform.localPosition = new Vector3(0, 1, 0);
|
|
||||||
Unity.ModelAsset = modelObject.GetComponent<PlayerModelAsset>();
|
|
||||||
Unity.ModelAsset.SetPlayer(Unity.FppLook);
|
|
||||||
}
|
|
||||||
|
|
||||||
#endregion
|
|
||||||
}
|
|
||||||
|
|
||||||
public class PlayerViewAwakeSystem : AwakeSystem<PlayerViewComponent>
|
|
||||||
{
|
|
||||||
protected override void Awake(PlayerViewComponent self)
|
|
||||||
{
|
|
||||||
self.Awake();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public class PlayerViewDestroySystem : DestroySystem<PlayerViewComponent>
|
|
||||||
{
|
|
||||||
protected override void Destroy(PlayerViewComponent self)
|
|
||||||
{
|
|
||||||
self.Destroy();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public class PlayerViewUpdateSystem : UpdateSystem<PlayerViewComponent>
|
|
||||||
{
|
|
||||||
protected override void Update(PlayerViewComponent self)
|
|
||||||
{
|
|
||||||
self.Update();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public class PlayerViewLateUpdateSystem : LateUpdateSystem<PlayerViewComponent>
|
|
||||||
{
|
|
||||||
protected override void LateUpdate(PlayerViewComponent self)
|
|
||||||
{
|
|
||||||
self.LateUpdate();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
using UnityEngine;
|
|
||||||
|
|
||||||
namespace NBF
|
|
||||||
{
|
|
||||||
public class FHandItem : MonoBehaviour
|
|
||||||
{
|
|
||||||
public int ConfigId;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -4922,9 +4922,9 @@ namespace Fantasy
|
|||||||
MessageObjectPool<ItemBindInfo>.Return(this);
|
MessageObjectPool<ItemBindInfo>.Return(this);
|
||||||
}
|
}
|
||||||
[ProtoMember(1)]
|
[ProtoMember(1)]
|
||||||
public int Item { get; set; }
|
public long Item { get; set; }
|
||||||
[ProtoMember(2)]
|
[ProtoMember(2)]
|
||||||
public List<int> BindItems { get; set; } = new List<int>();
|
public List<long> BindItems { get; set; } = new List<long>();
|
||||||
}
|
}
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 物品信息
|
/// 物品信息
|
||||||
|
|||||||
@@ -34,6 +34,7 @@
|
|||||||
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003AIMGUIContainer_002Ecs_002Fl_003AC_0021_003FUsers_003F60527_003FAppData_003FRoaming_003FJetBrains_003FRider2024_002E3_003Fresharper_002Dhost_003FDecompilerCache_003Fdecompiler_003Fb4f75f0eb2d14004826911645c6175d61fbe00_003F49_003F22dd7281_003FIMGUIContainer_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
|
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003AIMGUIContainer_002Ecs_002Fl_003AC_0021_003FUsers_003F60527_003FAppData_003FRoaming_003FJetBrains_003FRider2024_002E3_003Fresharper_002Dhost_003FDecompilerCache_003Fdecompiler_003Fb4f75f0eb2d14004826911645c6175d61fbe00_003F49_003F22dd7281_003FIMGUIContainer_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
|
||||||
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003AIMGUIContainer_002Ecs_002Fl_003AC_0021_003FUsers_003F60527_003FAppData_003FRoaming_003FJetBrains_003FRider2025_002E1_003Fresharper_002Dhost_003FDecompilerCache_003Fdecompiler_003F348ed09ed1634d388253e20b5aab3fcf223400_003Ff5_003F8f871742_003FIMGUIContainer_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
|
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003AIMGUIContainer_002Ecs_002Fl_003AC_0021_003FUsers_003F60527_003FAppData_003FRoaming_003FJetBrains_003FRider2025_002E1_003Fresharper_002Dhost_003FDecompilerCache_003Fdecompiler_003F348ed09ed1634d388253e20b5aab3fcf223400_003Ff5_003F8f871742_003FIMGUIContainer_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
|
||||||
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003AIMGUIContainer_002Ecs_002Fl_003AC_0021_003FUsers_003F60527_003FAppData_003FRoaming_003FJetBrains_003FRider2025_002E3_003Fresharper_002Dhost_003FDecompilerCache_003Fdecompiler_003F348ed09ed1634d388253e20b5aab3fcf223400_003Ff5_003F8f871742_003FIMGUIContainer_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
|
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003AIMGUIContainer_002Ecs_002Fl_003AC_0021_003FUsers_003F60527_003FAppData_003FRoaming_003FJetBrains_003FRider2025_002E3_003Fresharper_002Dhost_003FDecompilerCache_003Fdecompiler_003F348ed09ed1634d388253e20b5aab3fcf223400_003Ff5_003F8f871742_003FIMGUIContainer_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
|
||||||
|
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003AInt32_002Ecs_002Fl_003AC_0021_003FUsers_003FFIREBAT_003FAppData_003FRoaming_003FJetBrains_003FRider2025_002E3_003Fresharper_002Dhost_003FDecompilerCache_003Fdecompiler_003Fee16c2cb688d4766af955c0ec92acd90573638_003Fa4_003Fca01585e_003FInt32_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
|
||||||
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003AJsonSerializerInternalWriter_002Ecs_002Fl_003AC_0021_003FUsers_003FFIREBAT_003FAppData_003FRoaming_003FJetBrains_003FRider2025_002E2_003Fresharper_002Dhost_003FSourcesCache_003Fe2e3d26278e439d44964729238a685ad58d3189abf8fb84cdfe34b893a290a2_003FJsonSerializerInternalWriter_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
|
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003AJsonSerializerInternalWriter_002Ecs_002Fl_003AC_0021_003FUsers_003FFIREBAT_003FAppData_003FRoaming_003FJetBrains_003FRider2025_002E2_003Fresharper_002Dhost_003FSourcesCache_003Fe2e3d26278e439d44964729238a685ad58d3189abf8fb84cdfe34b893a290a2_003FJsonSerializerInternalWriter_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
|
||||||
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003AJsonSerializer_002Ecs_002Fl_003AC_0021_003FUsers_003FFIREBAT_003FAppData_003FRoaming_003FJetBrains_003FRider2025_002E3_003Fresharper_002Dhost_003FDecompilerCache_003Fdecompiler_003F761cf2a144514d2291a678c334d49e9baa000_003F17_003F2f6d958d_003FJsonSerializer_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
|
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003AJsonSerializer_002Ecs_002Fl_003AC_0021_003FUsers_003FFIREBAT_003FAppData_003FRoaming_003FJetBrains_003FRider2025_002E3_003Fresharper_002Dhost_003FDecompilerCache_003Fdecompiler_003F761cf2a144514d2291a678c334d49e9baa000_003F17_003F2f6d958d_003FJsonSerializer_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
|
||||||
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003AJsonUtility_002Ecs_002Fl_003AC_0021_003FUsers_003FFIREBAT_003FAppData_003FRoaming_003FJetBrains_003FRider2025_002E3_003Fresharper_002Dhost_003FDecompilerCache_003Fdecompiler_003Fbd535c51a50047bd8847b8df6bc5f2a44600_003F57_003F2ada4d31_003FJsonUtility_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
|
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003AJsonUtility_002Ecs_002Fl_003AC_0021_003FUsers_003FFIREBAT_003FAppData_003FRoaming_003FJetBrains_003FRider2025_002E3_003Fresharper_002Dhost_003FDecompilerCache_003Fdecompiler_003Fbd535c51a50047bd8847b8df6bc5f2a44600_003F57_003F2ada4d31_003FJsonUtility_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
|
||||||
|
|||||||
Binary file not shown.
|
Before Width: | Height: | Size: 18 KiB After Width: | Height: | Size: 12 KiB |
Reference in New Issue
Block a user