2026-02-26 15:53:15 +08:00

122 lines
3.0 KiB
C#

using System;
using System.Collections.Generic;
using Logic.CrashSight;
using UnityEngine;
using RuntimeData;
using Logic.Multilingual;
using Logic.Skill;
using TH1_Logic.Core;
using TH1Renderer;
using TH1Resource;
using Unity.VisualScripting;
//单位类型
public enum MomentMainType
{
Darkest,
Adversity,
Key,
Glorious,
}
public enum MomentSubType
{
BattleHeroDie = 101001,
BattleCaptainLost = 101002,
BattleCityLost = 101003,
BattleCityFire = 201004,
BattleCityBesieged = 201005,
BattleSacrify = 201006,
BattleTreasure = 201007,
BattleLevelup = 301008,
BattleNarrowVictory = 301009,
BattleCounterKill = 301010,
BattleLastStand = 301011,
BattleKillGiant = 301012,
BattleKillTreasure = 301013,
BattleCaptureVillage = 301014,
BattleOccupyFirstCity = 301015,
BattleOccupyCity = 301016,
Battle3Kill = 301017,
Battle4Kill = 301018,
BattleKillFullHealth = 301019,
BattleKillOfficer = 301020,
ExploitBigCity = 302001,
ExploitWealth10 = 302002,
ExploitWealth20 = 302003,
ExploitWealth30 = 302004,
ExploitTech5 = 302005,
ExploitTech10 = 302006,
ExploitFirstBattleShip = 302007,
ExploitFirstSwordsman = 302008,
ExploitFirstKnight = 302009,
ExploitFirstCatapult = 302010,
ExploitFirstGiant = 302011,
ExploitFirstPreserve = 302012,
ExploitFirstAcademy = 302013,
ExploitFirstWindmill = 302014,
ExploitFirstMarket = 302015,
ExploitFirstForge = 302016,
ExploitFirstSawmill = 302017,
ExploitFirstNavalBase = 302018,
DiplomacyBreak = 303001,
Battle5Kill = 401001,
Battle6PlusKill = 401002,
BattleOccupyCaptain = 401003,
BattleKillHero = 401004,
BattleOccupyOurCity = 401005,
BattleOccupyOurCaptain = 401006,
ExploitWonder = 402001,
ExploitWealth50 = 402002,
ExploitWealth100 = 402003,
ExploitTech20 = 402004,
ExploitFirstSuperCity = 402005,
ExploitFirstBigPreserve = 402006,
ExploitFirstBigAcademy = 402007,
ExploitFirstBigWindmill = 402008,
ExploitFirstBigMarket = 402009,
ExploitFirstBigForge = 402010,
ExploitFirstBigSawmill = 402011,
}
[Serializable]
[CreateAssetMenu(fileName = "MomentDataAssets", menuName = "TH1 Game Data/Moment Data Asset")]
public class MomentDataAssets : ScriptableObject
{
[NonSerialized]
private bool _initialized = false;
private string GiantLevelToString(GiantType g, uint l) { return g + "_" + l; }
// --------------------------------------------- 临时填写数据用 ----------------------------------
}
//每一种xx时刻大类的参数
[Serializable]
public class MomentMainData
{
public MomentMainType MomentType;
public Color TitleBG;
public Color DescBG;
public Color TitleTextBG;
[MultilingualField]
public string Title;
}
//每一种xx时刻小类的参数
[Serializable]
public class MomentSubData
{
public MomentMainType MomentType;
public MomentSubType SubType;
[MultilingualField]
public string Title;
[MultilingualField]
public string Desc;
}