This commit is contained in:
CortexCore 2025-06-12 16:08:12 +08:00
parent 4c2534a6e9
commit a772331918
10 changed files with 108 additions and 2 deletions

View File

@ -32,6 +32,7 @@ namespace Net.Project.B.Health
if(prevHp==value)return;
healthPoint = value;
OnHealthChanged?.Invoke(prevHp,healthPoint);
}
}

8
Src/Level.meta Normal file
View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: ab89ce641ffd51543b1bc41781de9c71
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,39 @@
using System;
using System.Collections;
using System.Collections.Generic;
using Unity.Mathematics;
namespace Net.Project.B.Level
{
public class LevelComponent
{
public int Level { get; private set; }
public int2 Exp { get; set; } = new(0, 1000);
public event Action<int,int> OnExpChanged;
public event Action<int> OnLevelChanged;
public void AddExp(int exp)
{
var current = Exp;
var newExp = Exp + new int2(exp, 0);
// 是否升级x 是当前经验y 是当前等级所需经验)
if (newExp.x >= Exp.y)
{
newExp.x -= Exp.y; // 超出部分保留
newExp.y = (Level/10+1)+Level%10; // 如果你有更高级别的经验需求函数
Exp = newExp;
Level++;
OnLevelChanged?.Invoke(Level);
}
else
{
Exp = newExp;
}
OnExpChanged?.Invoke(current.x, newExp.x);
}
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 4e174908a3e850e4ba7c55460b1179ac
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,16 @@
{
"name": "Net.Project.B.Level",
"rootNamespace": "",
"references": [
"GUID:d8b63aba1907145bea998dd612889d6b"
],
"includePlatforms": [],
"excludePlatforms": [],
"allowUnsafeCode": false,
"overrideReferences": false,
"precompiledReferences": [],
"autoReferenced": true,
"defineConstraints": [],
"versionDefines": [],
"noEngineReferences": false
}

View File

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 16c1175489fd8a84b846b3dedc7e7836
AssemblyDefinitionImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,14 +1,24 @@
using System;
using System.Collections;
using System.Collections.Generic;
using BITKit;
using BITKit.WorldNode;
using Unity.Mathematics;
using UnityEngine;
namespace Net.Project.B.Mark
{
public interface IMarkType{}
public interface IMarkComponent
{
}
[Serializable]
public class NameMark:IWorldNode
{
#if UNITY_5_3_OR_NEWER
[SerializeReference, SubclassSelector] private IReference name;
public string Name => name?.Value;
#endif
}
public class PositionMark:IMarkComponent{}
}

View File

@ -76,6 +76,16 @@ namespace Project.B.Player
[DisplayName("Settings_TPS_FOV")]
public int TpsFov { get; set; } = 75;
/// <summary>
/// 镜头晃动幅度,防止用户眩晕
/// </summary>
[DisplayName("Settings_View_Camera_Movement_Intensity")]
public float ViewCameraMovementIntensity { get; set; } = 1f;
/// <summary>
/// 最低第三人称视角距离,防止用户眩晕
/// </summary>
[DisplayName("Settings_TPS_Min_Distance")]
public float TpsMinDistance { get; set; }
/// <summary>
/// 分辨率
/// </summary>
[DisplayName("Settings_Resolution")] public int2 Resolution { get; set; }

View File

@ -9,7 +9,10 @@ using Net.Project.B.World;
namespace Net.Project.B.UX
{
public interface IUXHud:IUXPanel{}
public interface IUXHud : IUXPanel
{
public ValidHandle InCinematicMode { get; }
}
public interface IUXInitialize:IUXPanel,ILogger<IUXInitialize> {}
public interface IUXBuyStation:IUXPanel{}
public interface IUXControlMode:IUXPanel{}
@ -53,4 +56,5 @@ namespace Net.Project.B.UX
public IReadOnlyCollection<IBuff> SurvivalBuffs { get; set; }
}
public interface IUXChat:IUXPanel{}
public interface IUXLevelUp:IUXPanel{}
}

View File

@ -32,7 +32,7 @@ namespace Net.Project.B.WorldNode
if (!searchGameObject) continue;
hashSet.UnionWith(searchGameObject.GetComponentsInChildren<Transform>());
}
staticGameObjects = hashSet.Select(x => x.gameObject).ToArray();
staticGameObjects = hashSet.Where(x=>x.gameObject.isStatic).Select(x => x.gameObject).ToArray();
}
else
{