初始化仓库

This commit is contained in:
SepComet
2026-02-07 19:38:49 +08:00
commit 88641dae11
1540 changed files with 371772 additions and 0 deletions
@@ -0,0 +1,9 @@
fileFormatVersion: 2
guid: c9bfd67d99634cc45a60985500514160
folderAsset: yes
timeCreated: 1528026148
licenseType: Pro
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,39 @@
//------------------------------------------------------------
// Game Framework
// Copyright © 2013-2021 Jiang Yin. All rights reserved.
// Homepage: https://gameframework.cn/
// Feedback: mailto:ellan@gameframework.cn
//------------------------------------------------------------
namespace Definition
{
public static partial class Constant
{
/// <summary>
/// 资源优先级。
/// </summary>
public static class AssetPriority
{
public const int ConfigAsset = 100;
public const int DataTableAsset = 100;
public const int DictionaryAsset = 100;
public const int FontAsset = 50;
public const int MusicAsset = 20;
public const int SceneAsset = 0;
public const int SoundAsset = 30;
public const int UIFormAsset = 50;
public const int UISoundAsset = 30;
public const int MyAircraftAsset = 90;
public const int PlayerAsset = 90;
public const int AircraftAsset = 80;
public const int ThrusterAsset = 30;
public const int WeaponAsset = 30;
public const int ArmorAsset = 30;
public const int BulletAsset = 80;
public const int AsteroiAsset = 80;
public const int EnemyAsset = 80;
public const int EffectAsset = 80;
}
}
}
@@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: be044f4c80eead74cb105ed3c02de870
timeCreated: 1528830649
licenseType: Pro
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,29 @@
//------------------------------------------------------------
// Game Framework
// Copyright © 2013-2021 Jiang Yin. All rights reserved.
// Homepage: https://gameframework.cn/
// Feedback: mailto:ellan@gameframework.cn
//------------------------------------------------------------
using UnityEngine;
namespace Definition
{
public static partial class Constant
{
/// <summary>
/// 层。
/// </summary>
public static class Layer
{
public const string DefaultLayerName = "Default";
public static readonly int DefaultLayerId = LayerMask.NameToLayer(DefaultLayerName);
public const string UILayerName = "UI";
public static readonly int UILayerId = LayerMask.NameToLayer(UILayerName);
public const string TargetableObjectLayerName = "Targetable Object";
public static readonly int TargetableObjectLayerId = LayerMask.NameToLayer(TargetableObjectLayerName);
}
}
}
@@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: a43e7bbaf538cc045aaacf091c7d612e
timeCreated: 1528026149
licenseType: Pro
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,25 @@
//------------------------------------------------------------
// Game Framework
// Copyright © 2013-2021 Jiang Yin. All rights reserved.
// Homepage: https://gameframework.cn/
// Feedback: mailto:ellan@gameframework.cn
//------------------------------------------------------------
namespace Definition
{
public static partial class Constant
{
public static class Setting
{
public const string Language = "Setting.Language";
public const string SoundGroupMuted = "Setting.{0}Muted";
public const string SoundGroupVolume = "Setting.{0}Volume";
public const string MusicMuted = "Setting.MusicMuted";
public const string MusicVolume = "Setting.MusicVolume";
public const string SoundMuted = "Setting.SoundMuted";
public const string SoundVolume = "Setting.SoundVolume";
public const string UISoundMuted = "Setting.UISoundMuted";
public const string UISoundVolume = "Setting.UISoundVolume";
}
}
}
@@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: 28dc5d8fb274e45429ff40494dedac8a
timeCreated: 1528026149
licenseType: Pro
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,9 @@
fileFormatVersion: 2
guid: af9011f89c35904448c0225db21e8266
folderAsset: yes
timeCreated: 1528026149
licenseType: Pro
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,54 @@
//------------------------------------------------------------
// Game Framework
// Copyright © 2013-2021 Jiang Yin. All rights reserved.
// Homepage: https://gameframework.cn/
// Feedback: mailto:ellan@gameframework.cn
//------------------------------------------------------------
namespace Definition.DataStruct
{
public class BuildInfo
{
public string GameVersion
{
get;
set;
}
public int InternalGameVersion
{
get;
set;
}
public string CheckVersionUrl
{
get;
set;
}
public string WindowsAppUrl
{
get;
set;
}
public string MacOSAppUrl
{
get;
set;
}
public string IOSAppUrl
{
get;
set;
}
public string AndroidAppUrl
{
get;
set;
}
}
}
@@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: 265686b0408d79949a657768398c72cc
timeCreated: 1528026149
licenseType: Pro
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,37 @@
//------------------------------------------------------------
// Game Framework
// Copyright © 2013-2021 Jiang Yin. All rights reserved.
// Homepage: https://gameframework.cn/
// Feedback: mailto:ellan@gameframework.cn
//------------------------------------------------------------
using System.Runtime.InteropServices;
using Definition.Enum;
namespace Definition.DataStruct
{
[StructLayout(LayoutKind.Auto)]
public struct ImpactData
{
public ImpactData(CampType camp /*, int health*/, int attackBase, StatProperty attackStat = null,
StatProperty defenseStat = null, StatProperty dodgeStat = null)
{
Camp = camp;
//Health = health;
AttackBase = attackBase;
AttackStat = attackStat;
DefenseStat = defenseStat;
DodgeStat = dodgeStat;
}
public CampType Camp { get; }
public int AttackBase { get; }
public StatProperty AttackStat { get; }
public StatProperty DefenseStat { get; }
public StatProperty DodgeStat { get; }
}
}
@@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: 22538aa3f76228d48819a9942febb66d
timeCreated: 1528026149
licenseType: Pro
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,31 @@
using Components;
using DataTable;
namespace Definition.DataStruct
{
public class PropItem
{
private DRProp _prop;
public PropItem(DRProp prop)
{
_prop = prop;
}
public void OnAttach(StatComponent statComponent)
{
foreach (var modifier in _prop.Modifiers)
{
statComponent.AddModifier(modifier);
}
}
public void OnDetach(StatComponent statComponent)
{
foreach (var modifier in _prop.Modifiers)
{
statComponent.RemoveModifier(modifier);
}
}
}
}
@@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: 135b5ab1b6f5491989f080cf8b949201
timeCreated: 1770212750
@@ -0,0 +1,91 @@
using System;
using Definition.Enum;
using StarForce;
using UnityGameFramework.Runtime;
namespace Definition.DataStruct
{
public class StatModifier
{
// None = 0,
// MaxHealth = 1,
// MovementSpeed = 2,
// Attack = 3,
// Defense = 4,
// AttackSpeed = 5,
// Critical = 6,
// CriticalDamage = 7,
// Dodge = 8,
private readonly string[] _statTypeNames =
{
"无效",
"最大生命",
"移动速度",
"伤害",
"防御",
"冷却",
"暴击率",
"暴击伤害",
"闪避"
};
public StatType StatType;
public float Value;
public bool IsPercent;
public override string ToString()
{
if (IsPercent)
{
if (Value > 0)
{
return $"{_statTypeNames[(int)StatType]}: <color=green>+{Value * 100}%</color>";
}
else
{
return $"{_statTypeNames[(int)StatType]}: <color=red>+{Value * 100}%</color>";
}
}
else
{
if (Value > 0)
{
return $"{_statTypeNames[(int)StatType]}: <color=green>+{Value}</color>";
}
else
{
return $"{_statTypeNames[(int)StatType]}: <color=red>+{Value}</color>";
}
}
}
public static StatModifier StringToModifier(string input)
{
if (string.IsNullOrEmpty(input))
{
Log.Warning("Invalid modifier: {0}", input);
return null;
}
if (!input.StartsWith('[') || !input.EndsWith(']'))
{
throw new ArgumentException("Input must be enclosed in square brackets.");
}
string inner = input.Substring(1, input.Length - 2);
// 如果是空列表 "[]"
if (inner.Length == 0) return null;
string[] property = inner.Split(",");
int propertyIndex = 0;
return new StatModifier
{
StatType = EnumUtility<StatType>.Get(property[propertyIndex++]),
Value = float.Parse(property[propertyIndex++]),
IsPercent = bool.Parse(property[propertyIndex++])
};
}
}
}
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 4f70088ee3846934796f2cacb72fd920
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,20 @@
namespace Definition.DataStruct
{
public class StatProperty
{
public float Value;
public float Percent;
public StatProperty()
{
Value = 0f;
Percent = 1f;
}
public StatProperty(float value, float percent)
{
Value = value;
Percent = percent;
}
}
}
@@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: 18e7bc9587114ae4a91c70f829543de8
timeCreated: 1770353735
@@ -0,0 +1,75 @@
//------------------------------------------------------------
// Game Framework
// Copyright © 2013-2021 Jiang Yin. All rights reserved.
// Homepage: https://gameframework.cn/
// Feedback: mailto:ellan@gameframework.cn
//------------------------------------------------------------
namespace Definition.DataStruct
{
public class VersionInfo
{
// 是否需要强制更新游戏应用
public bool ForceUpdateGame
{
get;
set;
}
// 最新的游戏版本号
public string LatestGameVersion
{
get;
set;
}
// 最新的游戏内部版本号
public int InternalGameVersion
{
get;
set;
}
// 最新的资源内部版本号
public int InternalResourceVersion
{
get;
set;
}
// 资源更新下载地址
public string UpdatePrefixUri
{
get;
set;
}
// 资源版本列表长度
public int VersionListLength
{
get;
set;
}
// 资源版本列表哈希值
public int VersionListHashCode
{
get;
set;
}
// 资源版本列表压缩后长度
public int VersionListCompressedLength
{
get;
set;
}
// 资源版本列表压缩后哈希值
public int VersionListCompressedHashCode
{
get;
set;
}
}
}
@@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: f1245482e9f20354796d50d6d85d2fe0
timeCreated: 1528026150
licenseType: Pro
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,9 @@
fileFormatVersion: 2
guid: 2fc27161191c61549a74f80fd54e9645
folderAsset: yes
timeCreated: 1528026150
licenseType: Pro
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,47 @@
//------------------------------------------------------------
// Game Framework
// Copyright © 2013-2021 Jiang Yin. All rights reserved.
// Homepage: https://gameframework.cn/
// Feedback: mailto:ellan@gameframework.cn
//------------------------------------------------------------
namespace Definition.Enum
{
/// <summary>
/// 阵营类型。
/// </summary>
public enum CampType : byte
{
Unknown = 0,
/// <summary>
/// 第一玩家阵营。
/// </summary>
Player,
/// <summary>
/// 第一敌人阵营。
/// </summary>
Enemy,
/// <summary>
/// 第一中立阵营。
/// </summary>
Neutral,
/// <summary>
/// 第二玩家阵营。
/// </summary>
Player2,
/// <summary>
/// 第二敌人阵营。
/// </summary>
Enemy2,
/// <summary>
/// 第二中立阵营
/// </summary>
Neutral2,
}
}
@@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: 61f18b2b0752f32449d9978f481a75fc
timeCreated: 1528026150
licenseType: Pro
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,9 @@
namespace Definition.Enum
{
public enum EnemyType : byte
{
None = 0,
MeleeEnemy = 101,
RemoteEnemy = 102,
}
}
@@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: 2aa817d65bcc425a9e015f3c1de7c9a9
timeCreated: 1770209105
@@ -0,0 +1,9 @@
namespace Definition.Enum
{
public enum GoodsType
{
None = 0,
Weapon,
Prop
}
}
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 4b6d8e25599afc54bb6e29b09e606bbd
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,35 @@
//------------------------------------------------------------
// Game Framework
// Copyright © 2013-2021 Jiang Yin. All rights reserved.
// Homepage: https://gameframework.cn/
// Feedback: mailto:ellan@gameframework.cn
//------------------------------------------------------------
namespace Definition.Enum
{
/// <summary>
/// 关系类型。
/// </summary>
public enum RelationType : byte
{
/// <summary>
/// 未知的。
/// </summary>
Unknown,
/// <summary>
/// 友好的。
/// </summary>
Friendly,
/// <summary>
/// 中立的。
/// </summary>
Neutral,
/// <summary>
/// 敌对的。
/// </summary>
Hostile
}
}
@@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: 2c5c37ca396eb9d47a70999b5825152b
timeCreated: 1528026150
licenseType: Pro
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,16 @@
namespace Definition.Enum
{
public enum StatType
{
None = 0,
MaxHealth = 1,
MovementSpeed = 2,
Attack = 3,
Defense = 4,
AttackSpeed = 5,
Critical = 6,
CriticalDamage = 7,
Dodge = 8,
}
}
@@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: 657fd4fd021a424397aa17c0359a1da1
timeCreated: 1768966119
@@ -0,0 +1,57 @@
//------------------------------------------------------------
// Game Framework
// Copyright © 2013-2021 Jiang Yin. All rights reserved.
// Homepage: https://gameframework.cn/
// Feedback: mailto:ellan@gameframework.cn
//------------------------------------------------------------
namespace Definition.Enum
{
/// <summary>
/// 界面编号。
/// </summary>
public enum UIFormType : byte
{
Undefined = 0,
/// <summary>
/// 弹出框。
/// </summary>
DialogForm = 1,
/// <summary>
/// 主菜单。
/// </summary>
MenuForm = 100,
/// <summary>
/// 设置。
/// </summary>
SettingForm = 101,
/// <summary>
/// 关于。
/// </summary>
AboutForm = 102,
/// <summary>
/// 主菜单。
/// </summary>
StartMenuForm = 200,
/// <summary>
/// 选择角色。
/// </summary>
SelectRoleForm = 201,
/// <summary>
/// 游戏商店。
/// </summary>
ShopForm = 202,
/// <summary>
/// 游戏HUD。
/// </summary>
HudForm = 203,
}
}
@@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: 75fd10c7585513846ab25372be0590b7
timeCreated: 1528026162
licenseType: Pro
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,9 @@
namespace Definition.Enum
{
public enum WeaponType : byte
{
None = 0,
WeaponKnife = 201,
Remote = 202,
}
}
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 1e4fe53d087154645ad496d2f178c843
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant: