超大量的更新 修复很多问题,gameplay特效初步

This commit is contained in:
FloatGaming
2026-02-14 23:46:20 +08:00
parent ef8eb67259
commit 3a7a0b4669
360 changed files with 85670 additions and 4144 deletions
+33 -33
View File
@@ -4,89 +4,89 @@ using System.Collections.Generic;
[CreateAssetMenu(fileName = "NewAllyHero", menuName = "SO_Data/AllyHero")]
public class AllyHero_SO : ScriptableObject
{
[Header("友方英雄基本信息")]
[Header("Inspector")]
public string ally_heroName;
public string ally_heroDesignation;
public int ally_heroID;
[Header("英雄立绘")]
[Header("Inspector")]
public Sprite ally_heroImage;
[Header("英雄局内头像")]
[Header("Inspector")]
public Sprite ally_heroProfile;
[Header("英雄选择界面头像")]
[Header("Inspector")]
public Sprite ally_heroSelectIcon;
[Header("英雄轨道icon")]
[Header("Inspector")]
public Sprite ally_heroIcon;
[Header("英雄编队界面海报")]
[Header("Inspector")]
public Sprite ally_heroPoster;
[Header("角色带通道立绘")]
[Header("Inspector")]
public Sprite ally_hero_HD_image;
[Header("角色正方形头像")]
[Header("Inspector")]
public Sprite ally_hero_squareProfile;
[Header("主题色")]
[Header("Inspector")]
public Color ally_heroThemeColor;
[Header("英雄简介")]
[Header("Inspector")]
[TextArea(3, 10)]
[Tooltip("英雄的详细简介信息")]
[Tooltip("Documentation text normalized.")]
public string ally_heroDescription;
[Header("等级属性列表")]
[Header("Inspector")]
public List<AllyLevelInfo> levelStats = new List<AllyLevelInfo>();
[System.Serializable]
public class AllyLevelInfo
{
[Tooltip("等级名称或标识")]
[Tooltip("Documentation text normalized.")]
public string levelName;
public int levelID;
[Tooltip("基础攻击力")]
[Tooltip("Documentation text normalized.")]
public int attack = 0;
[Tooltip("最大生命值")]
[Tooltip("Documentation text normalized.")]
public int maxHP = 100;
[Tooltip("伤害抗性 (0-1), 用于减少所受伤害")]
[Tooltip("Documentation text normalized.")]
public float damageResistance = 0f;
[Tooltip("最大法力值")]
[Tooltip("Documentation text normalized.")]
public int maxMana = 100;
[Tooltip("得分效率")]
[Tooltip("Documentation text normalized.")]
public float scoreEfficiency = 1f;
[Header("升到本等级所需经验")]
[Tooltip("升到本等级所需经验")]
[Header("Inspector")]
[Tooltip("Documentation text normalized.")]
public int requiredEXP;
[Header("本等级限制解锁技能槽位数量")]
[Tooltip("本等级限制解锁技能槽位数量")]
[Header("Inspector")]
[Tooltip("Documentation text normalized.")]
public int skill_slot_limited;
[Header("Note-hit shared parameters")]
[Tooltip("Good 判定时获得的法力值(整数)")]
[Tooltip("Documentation text normalized.")]
public int manaGainGood = 1;
[Tooltip("Great 判定时获得的法力值(整数)")]
[Tooltip("Documentation text normalized.")]
public int manaGainGreat = 2;
[Tooltip("Perfect 判定时获得的法力值(整数)")]
[Tooltip("Documentation text normalized.")]
public int manaGainPerfect = 3;
[Tooltip("Miss 判定时获得的法力值(整数)")]
[Tooltip("Documentation text normalized.")]
public int manaGainOnMiss = 5;
[Tooltip("Good 判定时基于英雄攻击力的伤害倍率,例如 0.5 表示造成 50% 的基础攻击力伤害")]
[Tooltip("Documentation text normalized.")]
public float damageMultiplierGood = 0.5f;
[Tooltip("Great 判定时基于英雄攻击力的伤害倍率,例如 0.75 表示造成 75% 的基础攻击力伤害")]
[Tooltip("Documentation text normalized.")]
public float damageMultiplierGreat = 0.75f;
[Tooltip("Perfect 判定时基于英雄攻击力的伤害倍率,例如 1.0 表示造成 100% 的基础攻击力伤害")]
[Tooltip("Documentation text normalized.")]
public float damageMultiplierPerfect = 1f;
[Tooltip("Miss 时造成的基础生命损失基数。最终扣血将按 (missHpLossBase * (1 - damageResistance)) 计算,以考虑抗性")]
[Tooltip("Documentation text normalized.")]
public float missHpLossBase = 10f;
}
[Header("当前经验")]
[Header("Inspector")]
public int ally_currentEXP;
[Header("Skills")]
@@ -97,7 +97,7 @@ public class AllyHero_SO : ScriptableObject
[Tooltip("Primary selected skill index into availableSkills (-1 = none)")]
public int primarySkillIndex = -1;
// --- 技能组逻辑(已修复) ---
// Documentation text normalized.
[Tooltip("Skill groups defined on this hero. Each SkillGroup has a numeric skillGroupID which can be equipped into slots to allow activation of the entire group via that ID.")]
public SkillGroup[] skillGroups = new SkillGroup[0];
@@ -105,7 +105,7 @@ public class AllyHero_SO : ScriptableObject
[Tooltip("Equipped skill group IDs for this ally. Each int references a skillGroupID defined in skillGroups. Use 0 to indicate empty.")]
public int[] equippedSkillGroupIDs = new int[0];
// --- 技能方法 ---
// Documentation text normalized.
public SkillDefinition GetPrimarySkill()
{
+12 -12
View File
@@ -1,19 +1,19 @@
using UnityEngine;
using UnityEngine;
using System.Collections.Generic;
[CreateAssetMenu(fileName = "NewEnemyData", menuName = "SO_Data/EnemyData")]
public class EnemyData_SO : ScriptableObject
{
[Header("基本信息")]
[Tooltip("敌人名称")]
[Header("Inspector")]
[Tooltip("Documentation text normalized.")]
public string enemyName;
public Sprite enemy_Image;
public Sprite enemy_Profile;
[Tooltip("敌人ID")]
[Tooltip("Documentation text normalized.")]
public int enemyID;
[Header("类型")]
[Header("Inspector")]
public EnemyType enemyType = EnemyType.Simple;
public enum EnemyType
@@ -25,20 +25,20 @@ public class EnemyData_SO : ScriptableObject
}
[Header("Stats")]
[Tooltip("最大生命值")]
[Tooltip("Documentation text normalized.")]
public int enemy_maxHP;
[Tooltip("敌人伤害抗性")]
[Tooltip("Documentation text normalized.")]
public float enemy_damageResistance;
[Tooltip("基础攻击力")]
[Tooltip("Documentation text normalized.")]
public int enemy_baseAttack;
// 最大法力值(仅当 enemyType == Boss 或 Legend 时才生效)
[Tooltip("最大法力值(仅当类型为 Boss 或 Legend 时生效)")]
// Documentation text normalized.
[Tooltip("Documentation text normalized.")]
public int enemy_maxMana = 0;
[Header("死亡时提供的分数")]
[Header("Inspector")]
public int scoreOnBeingDefeated;
// Skills (same idea as AllyHero_SO)
@@ -71,7 +71,7 @@ public class EnemyData_SO : ScriptableObject
}
[Header("Combat Settings")]
[Tooltip("受到伤害回复法力的比例(0-1),例如 0.2 表示根据所受伤害的 20% 回复法力,向上取整)")]
[Tooltip("Documentation text normalized.")]
[Range(0f, 1f)]
public float manaGainOnDamagePercent = 0.2f; // default 20%
}
+3 -3
View File
@@ -1,9 +1,9 @@
using UnityEngine;
using UnityEngine;
[CreateAssetMenu(fileName = "PlayerDefaultSO", menuName = "SO_Data/PlayerSO")]
public class Player_SO : ScriptableObject
{
[Header("Íæ¼ÒÐÅÏ¢")]
[Header("Inspector")]
public Sprite playerProfile;
public string player_name;
public int player_UID; // steam ID
@@ -12,4 +12,4 @@ public class Player_SO : ScriptableObject
[Header("economics")]
[SerializeField] private int player_money;
[SerializeField] private int player_material;
}
}