修复了bug
[版本 V0.7.2c] 发布日期:26.5.31 ---------[bug修复与优化]------------- 1.修复了东风谷早苗掷签范围伤害击杀单位后图像残留的bug 2.修复了铃仙触发幻影齐射并击杀单位时可能产生图像残留的bug 3.修复了隐脉地块可能不显示的bug 4.优化了隐脉生成逻辑,且隐脉将不再会生成于水域或者山脉中 6.修复了探索者发现结界塔时城市经验动画播放错误的bug 8.优化了拖动地图时可能镜头强制移会起始点的bug
|
After Width: | Height: | Size: 55 KiB |
|
After Width: | Height: | Size: 69 KiB |
|
After Width: | Height: | Size: 47 KiB |
|
After Width: | Height: | Size: 38 KiB |
|
After Width: | Height: | Size: 47 KiB |
|
After Width: | Height: | Size: 32 KiB |
|
After Width: | Height: | Size: 11 KiB |
|
After Width: | Height: | Size: 48 KiB |
|
After Width: | Height: | Size: 41 KiB |
|
After Width: | Height: | Size: 58 KiB |
|
After Width: | Height: | Size: 33 KiB |
|
After Width: | Height: | Size: 44 KiB |
|
After Width: | Height: | Size: 68 KiB |
|
After Width: | Height: | Size: 69 KiB |
|
After Width: | Height: | Size: 32 KiB |
|
After Width: | Height: | Size: 69 KiB |
|
After Width: | Height: | Size: 39 KiB |
|
After Width: | Height: | Size: 46 KiB |
|
After Width: | Height: | Size: 37 KiB |
|
After Width: | Height: | Size: 49 KiB |
|
After Width: | Height: | Size: 19 KiB |
BIN
Design/final/narrative/奇观设计/existing-wonders-contact.png
Normal file
|
After Width: | Height: | Size: 160 KiB |
@ -70,7 +70,14 @@
|
||||
border-radius: 4px;
|
||||
}
|
||||
.ref-card { background: #f8fafc; }
|
||||
.ref-card img {
|
||||
.ref-grid {
|
||||
display: grid;
|
||||
grid-template-columns: repeat(3, minmax(0, 1fr));
|
||||
gap: 8px;
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
.ref-grid figure { margin: 0; }
|
||||
.ref-grid img {
|
||||
display: block;
|
||||
width: 100%;
|
||||
aspect-ratio: 4 / 3;
|
||||
@ -78,7 +85,12 @@
|
||||
background: #e2e8f0;
|
||||
border: 1px solid var(--line);
|
||||
border-radius: 6px;
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
.ref-grid figcaption {
|
||||
color: var(--muted);
|
||||
font-size: 12px;
|
||||
line-height: 1.35;
|
||||
margin-top: 4px;
|
||||
}
|
||||
.source-links {
|
||||
margin: 8px 0 0;
|
||||
@ -115,6 +127,7 @@
|
||||
}
|
||||
@media (max-width: 620px) {
|
||||
.spec-grid { grid-template-columns: 1fr; }
|
||||
.ref-grid { grid-template-columns: 1fr; }
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
@ -204,7 +217,20 @@
|
||||
</div>
|
||||
<aside class="ref-card">
|
||||
<h3>明确参考图</h3>
|
||||
<img src="https://upload.wikimedia.org/wikipedia/commons/b/b9/Rock_of_law_in_%C3%9Eingvellir.jpg" alt="辛格维利尔法律石参考">
|
||||
<div class="ref-grid">
|
||||
<figure>
|
||||
<img src="assets/viking-wonders/peace-01-law-rock.png" alt="辛格维利尔法律石参考">
|
||||
<figcaption>Law Rock 主体:岩石平台 + 旗杆,可直接转化为奇观主轮廓。</figcaption>
|
||||
</figure>
|
||||
<figure>
|
||||
<img src="assets/viking-wonders/peace-02-flag.png" alt="辛格维利尔法律石和旗帜参考">
|
||||
<figcaption>法律石与旗帜:提炼暗红/赭黄小旗和仪式感。</figcaption>
|
||||
</figure>
|
||||
<figure>
|
||||
<img src="assets/viking-wonders/peace-03-rift.png" alt="辛格维利尔裂谷地貌参考">
|
||||
<figcaption>裂谷地貌:用于底座岩层、苔草和冷灰地形。</figcaption>
|
||||
</figure>
|
||||
</div>
|
||||
<ul class="source-links">
|
||||
<li><a href="https://www.thingvellir.is/en/education/history/assembly-site/">Thingvellir 官方:Assembly Site</a>,看法律石与集会地逻辑。</li>
|
||||
<li><a href="https://whc.unesco.org/en/list/1152">UNESCO:Thingvellir National Park</a>,看裂谷地貌和世界遗产说明。</li>
|
||||
@ -254,7 +280,20 @@
|
||||
</div>
|
||||
<aside class="ref-card">
|
||||
<h3>明确参考图</h3>
|
||||
<img src="https://upload.wikimedia.org/wikipedia/commons/f/f3/Jelling_rune_stones.1.ajb.jpg" alt="耶灵符文石参考">
|
||||
<div class="ref-grid">
|
||||
<figure>
|
||||
<img src="assets/viking-wonders/knowledge-01-stone.png" alt="耶灵符文石整体参考">
|
||||
<figcaption>符文石整体:主石形、石面比例和风化灰色。</figcaption>
|
||||
</figure>
|
||||
<figure>
|
||||
<img src="assets/viking-wonders/knowledge-02-relief.png" alt="耶灵石浮雕细节参考">
|
||||
<figcaption>浮雕细节:符文、兽纹和边框线条的简化依据。</figcaption>
|
||||
</figure>
|
||||
<figure>
|
||||
<img src="assets/viking-wonders/knowledge-03-site.png" alt="耶灵遗址土丘和教堂参考">
|
||||
<figcaption>遗址环境:土丘与白色教堂只作为低饱和背景构件。</figcaption>
|
||||
</figure>
|
||||
</div>
|
||||
<ul class="source-links">
|
||||
<li><a href="https://en.natmus.dk/historical-knowledge/denmark/prehistoric-period-until-1050-ad/the-viking-age/the-monuments-at-jelling/">National Museum of Denmark:The Monuments at Jelling</a>,看历史信息。</li>
|
||||
<li><a href="https://whc.unesco.org/en/list/697">UNESCO:Jelling Mounds, Runic Stones and Church</a>,看遗址构成。</li>
|
||||
@ -305,7 +344,20 @@
|
||||
</div>
|
||||
<aside class="ref-card">
|
||||
<h3>明确参考图</h3>
|
||||
<img src="https://upload.wikimedia.org/wikipedia/commons/f/fa/Haithabu_Anlage.jpg" alt="海泽比参考">
|
||||
<div class="ref-grid">
|
||||
<figure>
|
||||
<img src="assets/viking-wonders/trade-01-site.png" alt="海泽比遗址鸟瞰参考">
|
||||
<figcaption>遗址鸟瞰:水边聚落和木屋组的布局感。</figcaption>
|
||||
</figure>
|
||||
<figure>
|
||||
<img src="assets/viking-wonders/trade-02-house.png" alt="海泽比复原木屋参考">
|
||||
<figcaption>草顶木屋:贸易港主体建筑的屋顶和木墙样式。</figcaption>
|
||||
</figure>
|
||||
<figure>
|
||||
<img src="assets/viking-wonders/trade-03-market.png" alt="海泽比木屋群参考">
|
||||
<figcaption>建筑组关系:两三座木屋 + 小空地,避免画成大城市。</figcaption>
|
||||
</figure>
|
||||
</div>
|
||||
<ul class="source-links">
|
||||
<li><a href="https://whc.unesco.org/en/list/1553">UNESCO:Hedeby and the Danevirke</a>,看贸易中心与防线关系。</li>
|
||||
<li><a href="https://haithabu.de/">Wikinger Museum Haithabu</a>,看复原建筑与场景。</li>
|
||||
@ -356,7 +408,20 @@
|
||||
</div>
|
||||
<aside class="ref-card">
|
||||
<h3>明确参考图</h3>
|
||||
<img src="https://upload.wikimedia.org/wikipedia/commons/0/0b/Osebergskipet_2016.jpg" alt="奥塞贝格船参考">
|
||||
<div class="ref-grid">
|
||||
<figure>
|
||||
<img src="assets/viking-wonders/wealth-01-ship.png" alt="奥塞贝格船整体参考">
|
||||
<figcaption>船体整体:长船横向剪影和高翘船首。</figcaption>
|
||||
</figure>
|
||||
<figure>
|
||||
<img src="assets/viking-wonders/wealth-02-excavation.png" alt="奥塞贝格船葬发掘参考">
|
||||
<figcaption>船葬发掘:半埋土丘和墓土剖面的参考。</figcaption>
|
||||
</figure>
|
||||
<figure>
|
||||
<img src="assets/viking-wonders/wealth-03-prow.png" alt="奥塞贝格船首兽纹参考">
|
||||
<figcaption>船首兽纹:财富奇观最重要的装饰细节之一。</figcaption>
|
||||
</figure>
|
||||
</div>
|
||||
<ul class="source-links">
|
||||
<li><a href="https://www.vikingtidsmuseet.no/english/">Museum of the Viking Age</a>,看奥塞贝格船官方展陈入口。</li>
|
||||
<li><a href="https://www.britannica.com/topic/Oseberg-ship">Britannica:Oseberg Ship</a>,看概述与船葬信息。</li>
|
||||
@ -407,7 +472,20 @@
|
||||
</div>
|
||||
<aside class="ref-card">
|
||||
<h3>明确参考图</h3>
|
||||
<img src="https://upload.wikimedia.org/wikipedia/commons/3/38/Trelleborg_airphoto.JPG" alt="特雷勒堡航拍参考">
|
||||
<div class="ref-grid">
|
||||
<figure>
|
||||
<img src="assets/viking-wonders/war-01-aerial.png" alt="特雷勒堡航拍参考">
|
||||
<figcaption>航拍圆环:奇观必须保留的几何识别点。</figcaption>
|
||||
</figure>
|
||||
<figure>
|
||||
<img src="assets/viking-wonders/war-02-longhouse.png" alt="特雷勒堡长屋参考">
|
||||
<figcaption>复原长屋:内部军营建筑的低矮长屋样式。</figcaption>
|
||||
</figure>
|
||||
<figure>
|
||||
<img src="assets/viking-wonders/war-03-earthwork.png" alt="特雷勒堡土垒道路参考">
|
||||
<figcaption>土垒与道路:圆环、壕沟和十字路的组合。</figcaption>
|
||||
</figure>
|
||||
</div>
|
||||
<ul class="source-links">
|
||||
<li><a href="https://whc.unesco.org/en/list/1660">UNESCO:Viking-Age Ring Fortresses</a>,看环形堡垒体系。</li>
|
||||
<li><a href="https://en.natmus.dk/museums-and-palaces/trelleborg/trelleborgs-history/">National Museum of Denmark:Trelleborg's history</a>,看官方历史说明。</li>
|
||||
@ -458,7 +536,20 @@
|
||||
</div>
|
||||
<aside class="ref-card">
|
||||
<h3>明确参考图</h3>
|
||||
<img src="https://upload.wikimedia.org/wikipedia/commons/1/12/Urnes_Stave_Church_1.jpg" alt="乌尔内斯木板教堂参考">
|
||||
<div class="ref-grid">
|
||||
<figure>
|
||||
<img src="assets/viking-wonders/culture-01-church.png" alt="乌尔内斯木板教堂整体参考">
|
||||
<figcaption>教堂整体:竖向层叠屋顶和深色木构主轮廓。</figcaption>
|
||||
</figure>
|
||||
<figure>
|
||||
<img src="assets/viking-wonders/culture-02-side.png" alt="乌尔内斯木板教堂北侧参考">
|
||||
<figcaption>侧面轮廓:可提炼多层坡屋顶和瘦高体块。</figcaption>
|
||||
</figure>
|
||||
<figure>
|
||||
<img src="assets/viking-wonders/culture-03-carving.png" alt="乌尔内斯门板兽纹雕刻参考">
|
||||
<figcaption>门板雕刻:Urnes 兽纹风格,用于文化奇观精致度。</figcaption>
|
||||
</figure>
|
||||
</div>
|
||||
<ul class="source-links">
|
||||
<li><a href="https://whc.unesco.org/en/list/58">UNESCO:Urnes Stave Church</a>,看世界遗产说明。</li>
|
||||
<li><a href="https://commons.wikimedia.org/wiki/File:Urnes_Stave_Church_1.jpg">参考图:教堂整体轮廓</a>。</li>
|
||||
@ -509,7 +600,20 @@
|
||||
</div>
|
||||
<aside class="ref-card">
|
||||
<h3>明确参考图</h3>
|
||||
<img src="https://upload.wikimedia.org/wikipedia/commons/d/d0/Anse_aux_Meadows%2C_Newfoundland._%2826493561277%29.jpg" alt="兰塞奥兹牧草地参考">
|
||||
<div class="ref-grid">
|
||||
<figure>
|
||||
<img src="assets/viking-wonders/explore-01-sod.png" alt="兰塞奥兹牧草地草皮屋参考">
|
||||
<figcaption>草皮建筑主体:低矮厚屋顶和贴地体块。</figcaption>
|
||||
</figure>
|
||||
<figure>
|
||||
<img src="assets/viking-wonders/explore-02-door.png" alt="兰塞奥兹牧草地复原屋参考">
|
||||
<figcaption>复原长屋近景:木框入口、草皮厚度和墙体质感。</figcaption>
|
||||
</figure>
|
||||
<figure>
|
||||
<img src="assets/viking-wonders/explore-03-camp.png" alt="兰塞奥兹牧草地营地环境参考">
|
||||
<figcaption>营地环境:草地、木构和冷灰天空形成远航前哨感。</figcaption>
|
||||
</figure>
|
||||
</div>
|
||||
<ul class="source-links">
|
||||
<li><a href="https://parks.canada.ca/lhn-nhs/nl/meadows.aspx">Parks Canada:L'Anse aux Meadows</a>,看官方遗址信息。</li>
|
||||
<li><a href="https://parks.canada.ca/lhn-nhs/nl/meadows/culture">Parks Canada:Culture and history</a>,看历史定位。</li>
|
||||
|
||||
@ -5,10 +5,12 @@ using Logic;
|
||||
using RuntimeData;
|
||||
using TH1_Anim;
|
||||
using TH1_Anim.Fragments;
|
||||
using TH1_Core.Events;
|
||||
using TH1_Logic.Core;
|
||||
using TH1_Presentation.Sequencer.Task;
|
||||
using TH1_UI.Controller.Announce;
|
||||
using TH1_UI.Controller.Interaction;
|
||||
using TH1_UI.Core;
|
||||
using TH1Renderer;
|
||||
using TH1Resource;
|
||||
using UnityEngine;
|
||||
@ -112,6 +114,8 @@ namespace TH1_Core.Managers
|
||||
}
|
||||
|
||||
//如果当前不是我的回合,并且进来了一个UISequencerTask,那么要先缓存,直到我的回合再显示出来
|
||||
if (IsDuplicateCityLevelUpChoiceTask(task)) return;
|
||||
|
||||
if (Main.MapData?.CurPlayer != null && Main.MapData?.PlayerMap?.SelfPlayerData != null &&
|
||||
Main.MapData.CurPlayer != Main.MapData.PlayerMap.SelfPlayerData && (task as UISequencerTask) != null)
|
||||
{
|
||||
@ -128,6 +132,114 @@ namespace TH1_Core.Managers
|
||||
|
||||
TryProcessNext();
|
||||
}
|
||||
|
||||
public static void EnqueuePendingCityLevelUpChoices(MapData map, PlayerData player)
|
||||
{
|
||||
if (map == null || player == null) return;
|
||||
if (map != Main.MapData) return;
|
||||
if (player != map.PlayerMap?.SelfPlayerData) return;
|
||||
if (map.CityMap?.CityList == null) return;
|
||||
|
||||
foreach (var city in map.CityMap.CityList)
|
||||
{
|
||||
if (city == null || city.CityLevelUpPoint <= 0) continue;
|
||||
if (!map.CityToPlayerDict.TryGetValue(city.Id, out var playerId) || playerId != player.Id) continue;
|
||||
EnqueuePendingCityLevelUpChoice(map, city);
|
||||
}
|
||||
}
|
||||
|
||||
public static void EnqueuePendingCityLevelUpChoice(MapData map, CityData city)
|
||||
{
|
||||
if (map == null || city == null || city.CityLevelUpPoint <= 0) return;
|
||||
if (map != Main.MapData) return;
|
||||
if (map.CurPlayer != map.PlayerMap?.SelfPlayerData) return;
|
||||
if (!map.GetPlayerDataByCityId(city.Id, out var player) || player != map.PlayerMap.SelfPlayerData) return;
|
||||
|
||||
var pendingLevel = city.Level - city.CityLevelUpPoint;
|
||||
if (pendingLevel < 2) pendingLevel = 2;
|
||||
if (HasQueuedCityLevelUpChoice(city.Id, pendingLevel)) return;
|
||||
var interaction = new ShowUIInteractionCityUpgrade
|
||||
{
|
||||
CityId = (int)city.Id,
|
||||
CityLevel = pendingLevel
|
||||
};
|
||||
EnqueueTask(new UISequencerTask(ViewControllerManager.UIInterationCityLevelupController, interaction), true);
|
||||
}
|
||||
|
||||
public static void DismissTurnBoundUIOnTurnEnd()
|
||||
{
|
||||
RemoveTurnBoundUITasks(_taskQueue);
|
||||
RemoveTurnBoundUITasks(_taskNextFrameQueue);
|
||||
RemoveTurnBoundUITasks(_taskNotCurPlayList);
|
||||
|
||||
if (_currentTask is UISequencerTask currentUiTask && IsTurnBoundUITask(currentUiTask))
|
||||
{
|
||||
currentUiTask.GetController()?.Close();
|
||||
}
|
||||
}
|
||||
|
||||
private static void RemoveTurnBoundUITasks(Queue<ISequencerTask> queue)
|
||||
{
|
||||
var count = queue.Count;
|
||||
for (var i = 0; i < count; i++)
|
||||
{
|
||||
var task = queue.Dequeue();
|
||||
if (!IsTurnBoundUITask(task)) queue.Enqueue(task);
|
||||
}
|
||||
}
|
||||
|
||||
private static bool IsTurnBoundUITask(ISequencerTask task)
|
||||
{
|
||||
if (task is not UISequencerTask uiTask) return false;
|
||||
var controllerType = uiTask.GetControllerType();
|
||||
return controllerType == typeof(UIAnnounceMajorEventController)
|
||||
|| controllerType == typeof(UIAnnounceDiplomacyController)
|
||||
|| controllerType == typeof(UIInteractionCityLevelupController)
|
||||
|| controllerType == typeof(UIInteractionDiplomacyOfferAllyController);
|
||||
}
|
||||
|
||||
private static bool HasQueuedCityLevelUpChoice(uint cityId, int cityLevel)
|
||||
{
|
||||
return IsCityLevelUpChoiceTask(_currentTask, cityId, cityLevel)
|
||||
|| ContainsCityLevelUpChoiceTask(_taskQueue, cityId, cityLevel)
|
||||
|| ContainsCityLevelUpChoiceTask(_taskNextFrameQueue, cityId, cityLevel)
|
||||
|| ContainsCityLevelUpChoiceTask(_taskNotCurPlayList, cityId, cityLevel);
|
||||
}
|
||||
|
||||
private static bool IsDuplicateCityLevelUpChoiceTask(ISequencerTask task)
|
||||
{
|
||||
if (!TryGetCityLevelUpChoiceTaskData(task, out var cityId, out var cityLevel)) return false;
|
||||
return HasQueuedCityLevelUpChoice(cityId, cityLevel);
|
||||
}
|
||||
|
||||
private static bool ContainsCityLevelUpChoiceTask(Queue<ISequencerTask> queue, uint cityId, int cityLevel)
|
||||
{
|
||||
foreach (var task in queue)
|
||||
{
|
||||
if (IsCityLevelUpChoiceTask(task, cityId, cityLevel)) return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
private static bool IsCityLevelUpChoiceTask(ISequencerTask task, uint cityId, int cityLevel)
|
||||
{
|
||||
return TryGetCityLevelUpChoiceTaskData(task, out var taskCityId, out var taskCityLevel)
|
||||
&& taskCityId == cityId
|
||||
&& taskCityLevel == cityLevel;
|
||||
}
|
||||
|
||||
private static bool TryGetCityLevelUpChoiceTaskData(ISequencerTask task, out uint cityId, out int cityLevel)
|
||||
{
|
||||
cityId = 0;
|
||||
cityLevel = 0;
|
||||
if (task is not UISequencerTask uiTask) return false;
|
||||
if (uiTask.GetControllerType() != typeof(UIInteractionCityLevelupController)) return false;
|
||||
if (uiTask.GetData() is not ShowUIInteractionCityUpgrade evt) return false;
|
||||
if (evt.CityId < 0) return false;
|
||||
cityId = (uint)evt.CityId;
|
||||
cityLevel = evt.CityLevel;
|
||||
return true;
|
||||
}
|
||||
|
||||
private static void TryProcessNext()
|
||||
{
|
||||
|
||||
@ -711,6 +711,12 @@ namespace RuntimeData
|
||||
if(Resource == ResourceType.CityCenter) return false;
|
||||
if (Terrain != TerrainType.Land) return false;
|
||||
}
|
||||
if (type == GridSpType.LeyLine)
|
||||
{
|
||||
if (Resource == ResourceType.CityCenter) return false;
|
||||
if (Terrain != TerrainType.Land) return false;
|
||||
if (Feature == TerrainFeature.Mountain) return false;
|
||||
}
|
||||
SpTypeList.Add(type);
|
||||
origin?.HeroTask(map)?.OnAddSpType(map, type);
|
||||
//如果是remiliaGrid,且是斯卡雷特帝国的单位,给当前的unit填加skill
|
||||
|
||||
@ -255,7 +255,7 @@ public class GridAndResourceDataAssets : ScriptableObject
|
||||
//如果是地脉格,使用地脉特殊外观(阵营限制由表格配置控制)
|
||||
if (grid.HasSpType(GridSpType.LeyLine))
|
||||
foreach (var t in info.SpriteList)
|
||||
if (t.IsGridSpType && t.GridSpType == GridSpType.LeyLine && grid.CivId == t.CivId)
|
||||
if (t.IsGridSpType && t.GridSpType == GridSpType.LeyLine)
|
||||
return t.Sprite;
|
||||
|
||||
|
||||
@ -619,4 +619,4 @@ public class WonderInfo
|
||||
public string Desc;
|
||||
public int Exp;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@ -1497,6 +1497,7 @@ namespace Logic.Action
|
||||
var paramMap = actionParams.MapData;
|
||||
var paramCity = actionParams.CityData;
|
||||
actionParams.CityData.CityLevelUpPoint --;
|
||||
var cityLevelUpSucceeded = false;
|
||||
|
||||
//不管哪个选项,都播放音效
|
||||
if (actionParams.CityData.Grid(actionParams.MapData)?.InMainSight() ?? false)
|
||||
@ -1513,28 +1514,27 @@ namespace Logic.Action
|
||||
// 2. 创建探索者,然后一边处理逻辑一边处理视觉,这里暂时用了maprenderer 来负责
|
||||
MapRenderer.Instance.CreateTemporaryExplorer(actionParams.MapData,paramGrid, 3f);
|
||||
|
||||
paramCity.SetCityRenderer(actionParams.MapData);
|
||||
return true;
|
||||
cityLevelUpSucceeded = true;
|
||||
}
|
||||
if (_actionId.CityLevelUpActionType == CityLevelUpActionType.Workshop)
|
||||
else if (_actionId.CityLevelUpActionType == CityLevelUpActionType.Workshop)
|
||||
{
|
||||
paramCity.Workshop = true;
|
||||
paramCity.SetCityRenderer(actionParams.MapData);
|
||||
if((paramGrid?.InMainSight()??false) && paramPlayer == Main.MapData.PlayerMap.SelfPlayerData)
|
||||
paramGrid.Renderer(paramMap)?.PlayVFXInSight(new GridVFXParams(GridVFXType.Coin));
|
||||
return true;
|
||||
cityLevelUpSucceeded = true;
|
||||
}
|
||||
if (_actionId.CityLevelUpActionType == CityLevelUpActionType.CityWealth)
|
||||
else if (_actionId.CityLevelUpActionType == CityLevelUpActionType.CityWealth)
|
||||
{
|
||||
if(PresentationManager.GetCityLevelupActionPos(_actionId.CityLevelUpActionType,out var pos))
|
||||
paramPlayer.AddCoin(5,pos);
|
||||
else
|
||||
paramPlayer.AddCoin(5);
|
||||
paramCity.SetCityRenderer(paramMap);
|
||||
return true;
|
||||
cityLevelUpSucceeded = true;
|
||||
}
|
||||
|
||||
if (_actionId.CityLevelUpActionType == CityLevelUpActionType.CityWall)
|
||||
else if (_actionId.CityLevelUpActionType == CityLevelUpActionType.CityWall)
|
||||
{
|
||||
paramCity.CityWall = true;
|
||||
paramGrid?.Renderer(paramMap)?.InstantUpdateGrid(true);
|
||||
@ -1542,9 +1542,9 @@ namespace Logic.Action
|
||||
//如果city上有单位,也要更新单位的渲染
|
||||
if (paramGrid.MainSelfPlayerVisibleUnit(out var unit) && unit.InMainSight())
|
||||
unit.Renderer(actionParams.MapData)?.InstantUpdateUnit(true);
|
||||
return true;
|
||||
cityLevelUpSucceeded = true;
|
||||
}
|
||||
if (_actionId.CityLevelUpActionType == CityLevelUpActionType.Expand)
|
||||
else if (_actionId.CityLevelUpActionType == CityLevelUpActionType.Expand)
|
||||
{
|
||||
Main.CityLogic.CityLevelUpActionExpand(actionParams.MapData,actionParams.CityData);
|
||||
actionParams.CityData.SetCityRenderer(actionParams.MapData);
|
||||
@ -1561,26 +1561,26 @@ namespace Logic.Action
|
||||
if(paramPlayer.TechTree.CheckIfHasTechAtom(TechAtom.KaguyaFrenchNapoleonicCode))
|
||||
Main.PlayerLogic.SetCityTerritoryGridSp(actionParams.MapData,actionParams.CityData,GridSpType.KaguyaGrid);
|
||||
|
||||
return true;
|
||||
cityLevelUpSucceeded = true;
|
||||
}
|
||||
if (_actionId.CityLevelUpActionType == CityLevelUpActionType.Population)
|
||||
else if (_actionId.CityLevelUpActionType == CityLevelUpActionType.Population)
|
||||
{
|
||||
//Step #2 逻辑层 & 表现层 :city获得exp
|
||||
var exp = 3;
|
||||
Main.CityLogic.GridGiveCityExp_LogicView(actionParams.MapData,paramPlayer,actionParams.CityData?.Grid(actionParams.MapData),actionParams.CityData,exp);
|
||||
return true;
|
||||
cityLevelUpSucceeded = true;
|
||||
}
|
||||
|
||||
if (_actionId.CityLevelUpActionType == CityLevelUpActionType.Park)
|
||||
else if (_actionId.CityLevelUpActionType == CityLevelUpActionType.Park)
|
||||
{
|
||||
actionParams.CityData.ParkCount++;
|
||||
actionParams.CityData.SetCityRenderer(actionParams.MapData);
|
||||
if((paramGrid?.InMainSight()??false) && paramPlayer == Main.MapData.PlayerMap.SelfPlayerData)
|
||||
paramGrid.Renderer(paramMap)?.PlayVFXInSight(new GridVFXParams(GridVFXType.Luxury));
|
||||
return true;
|
||||
cityLevelUpSucceeded = true;
|
||||
}
|
||||
|
||||
if (_actionId.CityLevelUpActionType == CityLevelUpActionType.BigGuy)
|
||||
else if (_actionId.CityLevelUpActionType == CityLevelUpActionType.BigGuy)
|
||||
{
|
||||
if(paramGrid.RealUnit(paramMap,out var unitData))
|
||||
Main.UnitLogic.PassiveMoveAway(paramMap, unitData);
|
||||
@ -1597,10 +1597,12 @@ namespace Logic.Action
|
||||
if (!actionParams.MapData.AddUnitData(paramGrid.Id, actionParams.CityData.Id,fullType ,out var _))
|
||||
return false;
|
||||
paramCity.SetCityRenderer(paramMap);
|
||||
return true;
|
||||
cityLevelUpSucceeded = true;
|
||||
}
|
||||
|
||||
return false;
|
||||
if (!cityLevelUpSucceeded) return false;
|
||||
PresentationManager.EnqueuePendingCityLevelUpChoice(actionParams.MapData, actionParams.CityData);
|
||||
return true;
|
||||
}
|
||||
|
||||
public override bool CheckCan(CommonActionParams actionParams)
|
||||
@ -1873,6 +1875,8 @@ namespace Logic.Action
|
||||
|
||||
// 开启 PendingAnimScope,逻辑运算期间技能产生的动画步骤会收集到 scope 中
|
||||
using var scope = PresentationManager.BeginScope();
|
||||
using var visualCollector = ActionVisualEventCollector.Begin(
|
||||
actionParams.MapData, actionParams.UnitData.Id, actionParams.TargetUnitData.Id);
|
||||
|
||||
//Step #0 为anim做数据准备
|
||||
GridData originGrid = null;
|
||||
@ -1946,6 +1950,7 @@ namespace Logic.Action
|
||||
var attackFragment = FragmentFactory.Create(fragmentType, attackData);
|
||||
// 将技能产生的 pending steps 注入到攻击 fragment 中
|
||||
scope.FlushTo(attackFragment);
|
||||
visualCollector?.FlushTo(attackFragment);
|
||||
PresentationManager.EnqueueTask(new FragmentSequencerTask(attackFragment));
|
||||
_duration = attackFragment.Duration;
|
||||
}
|
||||
@ -1962,6 +1967,7 @@ namespace Logic.Action
|
||||
var fragment = FragmentFactory.Create(fragmentType,data);
|
||||
// 将技能产生的 pending steps 注入到攻击 fragment 中
|
||||
scope.FlushTo(fragment);
|
||||
visualCollector?.FlushTo(fragment);
|
||||
PresentationManager.EnqueueTask(new FragmentSequencerTask(fragment));
|
||||
_duration = fragment.Duration;
|
||||
}
|
||||
@ -2288,7 +2294,10 @@ namespace Logic.Action
|
||||
}
|
||||
|
||||
if(actionParams.PlayerData.IsSelfPlayer())
|
||||
{
|
||||
PresentationManager.EnqueuePendingCityLevelUpChoices(actionParams.MapData, actionParams.PlayerData);
|
||||
EventManager.Publish(new ShowUIBottomBottomBarNextTurn(){});
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
@ -2319,6 +2328,8 @@ namespace Logic.Action
|
||||
{
|
||||
if (!CheckCan(actionParams)) return false;
|
||||
actionParams.MapData.OnTurnEnd(actionParams.PlayerData.Id);
|
||||
if (actionParams.MapData == Main.MapData)
|
||||
PresentationManager.DismissTurnBoundUIOnTurnEnd();
|
||||
if(actionParams.PlayerData.IsSelfPlayer())
|
||||
EventManager.Publish(new HideUIBottomBottomBarNextTurn(){});
|
||||
return true;
|
||||
|
||||
@ -0,0 +1,157 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using Logic;
|
||||
using RuntimeData;
|
||||
using TH1_Anim.Fragments;
|
||||
using TH1_Logic.Core;
|
||||
using TH1_Renderer;
|
||||
using TH1Renderer;
|
||||
|
||||
namespace Logic.Action
|
||||
{
|
||||
public class ActionVisualEventCollector : IDisposable
|
||||
{
|
||||
private readonly List<FragmentStep> _steps = new List<FragmentStep>();
|
||||
private readonly MapData _mapData;
|
||||
private readonly uint _mainTargetUnitId;
|
||||
private readonly ActionVisualEventCollector _previous;
|
||||
|
||||
public static ActionVisualEventCollector Current { get; private set; }
|
||||
public bool MainTargetKilledBeforeAttack { get; private set; }
|
||||
public int MainTargetPreAttackDamage { get; private set; }
|
||||
|
||||
private ActionVisualEventCollector(MapData mapData, uint originUnitId, uint mainTargetUnitId)
|
||||
{
|
||||
_mapData = mapData;
|
||||
_mainTargetUnitId = mainTargetUnitId;
|
||||
_previous = Current;
|
||||
Current = this;
|
||||
}
|
||||
|
||||
public static ActionVisualEventCollector Begin(MapData mapData, uint originUnitId, uint mainTargetUnitId)
|
||||
{
|
||||
if (mapData != Main.MapData) return null;
|
||||
return new ActionVisualEventCollector(mapData, originUnitId, mainTargetUnitId);
|
||||
}
|
||||
|
||||
public SettlementInfo SettleDamageWithVisual(
|
||||
UnitData origin,
|
||||
UnitData target,
|
||||
int damage,
|
||||
DamageType damageType,
|
||||
int phase,
|
||||
float delay = 0f,
|
||||
bool markMainTargetPreAttackKill = false,
|
||||
bool includeDamageVfx = true,
|
||||
bool showoff = false)
|
||||
{
|
||||
if (_mapData == null || origin == null || target == null)
|
||||
return Main.UnitLogic.DamageSettlement(_mapData, origin, target, damage, damageType);
|
||||
|
||||
var targetGrid = target.Grid(_mapData);
|
||||
var targetCity = target.City(_mapData);
|
||||
var targetRenderer = target.Renderer(_mapData);
|
||||
var canBeKilled = target.CanBeKilled(_mapData);
|
||||
var targetId = target.Id;
|
||||
|
||||
var settlement = Main.UnitLogic.DamageSettlement(_mapData, origin, target, damage, damageType);
|
||||
if (settlement == null) return null;
|
||||
|
||||
bool killed = settlement.IsKill || !target.IsAlive();
|
||||
if (markMainTargetPreAttackKill && killed && targetId == _mainTargetUnitId)
|
||||
{
|
||||
MainTargetKilledBeforeAttack = true;
|
||||
MainTargetPreAttackDamage += damage;
|
||||
}
|
||||
|
||||
if (targetGrid != null)
|
||||
{
|
||||
AddDamageStep(
|
||||
targetGrid,
|
||||
targetCity,
|
||||
targetRenderer,
|
||||
damage,
|
||||
killed,
|
||||
canBeKilled,
|
||||
phase,
|
||||
delay,
|
||||
includeDamageVfx,
|
||||
showoff);
|
||||
}
|
||||
|
||||
return settlement;
|
||||
}
|
||||
|
||||
private void AddDamageStep(
|
||||
GridData targetGrid,
|
||||
CityData targetCity,
|
||||
UnitRenderer targetRenderer,
|
||||
int damage,
|
||||
bool killed,
|
||||
bool canBeKilled,
|
||||
int phase,
|
||||
float delay,
|
||||
bool includeDamageVfx,
|
||||
bool showoff)
|
||||
{
|
||||
_steps.Add(new FragmentStep
|
||||
{
|
||||
Phase = phase,
|
||||
Duration = 0f,
|
||||
Execute = () =>
|
||||
{
|
||||
void RunVisual()
|
||||
{
|
||||
if (targetGrid == null) return;
|
||||
var gridRenderer = targetGrid.Renderer(_mapData);
|
||||
bool inMainSight = targetGrid.InMainSight();
|
||||
if (inMainSight)
|
||||
{
|
||||
gridRenderer?.PlayVFXInSight(new GridVFXParams(GridVFXType.Hurt));
|
||||
if (includeDamageVfx)
|
||||
gridRenderer?.PlayVFXInSight(new GridVFXParams(GridVFXType.Damage, damage));
|
||||
}
|
||||
|
||||
if (killed)
|
||||
{
|
||||
if (inMainSight)
|
||||
{
|
||||
gridRenderer?.PlayVFXInSight(new GridVFXParams(GridVFXType.Fog));
|
||||
if (canBeKilled)
|
||||
gridRenderer?.PlayVFXInSight(new GridVFXParams(GridVFXType.Die));
|
||||
}
|
||||
targetRenderer?.Die();
|
||||
targetCity?.SetCityRenderer(_mapData);
|
||||
MapRenderer.Instance?.UpdateAroundHighlight(_mapData, targetGrid);
|
||||
}
|
||||
else
|
||||
{
|
||||
targetRenderer?.InstantUpdateUnit(showoff);
|
||||
}
|
||||
|
||||
gridRenderer?.InstantUpdateGrid();
|
||||
}
|
||||
|
||||
if (delay > 0f && Timer.Instance != null)
|
||||
Timer.Instance.TimerRegister(this, RunVisual, delay, "ActionVisualEventCollector Damage Visual");
|
||||
else
|
||||
RunVisual();
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
public void FlushTo(FragmentBase fragment)
|
||||
{
|
||||
if (fragment == null) return;
|
||||
foreach (var step in _steps)
|
||||
fragment.InjectStep(step);
|
||||
_steps.Clear();
|
||||
}
|
||||
|
||||
public void Dispose()
|
||||
{
|
||||
_steps.Clear();
|
||||
Current = _previous;
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 9f12d6a9d2e94e8d8b18db034cb4d86f
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@ -1146,7 +1146,14 @@ namespace Logic
|
||||
{
|
||||
// Step #1 计算目标数量:地脉总数 = 城市中心总数 / 3
|
||||
int leyLineCount = _tribes.Count / 3;
|
||||
if (leyLineCount <= 0) return;
|
||||
bool hasIndianPlayer = false;
|
||||
foreach (var player in mapData.PlayerMap.PlayerDataList)
|
||||
if (player.CivEnum == CivEnum.Indian)
|
||||
{
|
||||
hasIndianPlayer = true;
|
||||
break;
|
||||
}
|
||||
if (leyLineCount <= 0 && !hasIndianPlayer) return;
|
||||
|
||||
// Step #2 构建首都排除区(仅首都±1范围,非首都村庄不排除)
|
||||
using var pooledCradleExclude = THCollectionPool.GetHashSetHandle<uint>(out var cradleExclude);
|
||||
@ -1159,9 +1166,7 @@ namespace Logic
|
||||
using var pooledCandidates = THCollectionPool.GetListHandle<GridData>(out var candidates);
|
||||
foreach (var gridData in mapData.GridMap.GridList)
|
||||
{
|
||||
if (gridData.Terrain != TerrainType.Land) continue;
|
||||
if (gridData.Resource == ResourceType.CityCenter) continue;
|
||||
if (cradleExclude.Contains(gridData.Pos.PosId)) continue;
|
||||
if (!CanPlaceLeyLine(gridData, cradleExclude)) continue;
|
||||
candidates.Add(gridData);
|
||||
}
|
||||
|
||||
@ -1177,8 +1182,8 @@ namespace Logic
|
||||
foreach (var grid in candidates)
|
||||
{
|
||||
if (placed >= leyLineCount) break;
|
||||
grid.SpTypeList.Add(GridSpType.LeyLine);
|
||||
placed++;
|
||||
if (TryAddLeyLine(mapData, grid, cradleExclude, true))
|
||||
placed++;
|
||||
}
|
||||
|
||||
// Step #6 古明地帝国保底:首都2格内必定有地脉
|
||||
@ -1194,26 +1199,90 @@ namespace Logic
|
||||
mapData.GridMap.GetAroundGridData(2, 2, cradleGrid, _aroundBuf);
|
||||
bool hasLeyLine = false;
|
||||
foreach (var g in _aroundBuf)
|
||||
if (g.HasSpType(GridSpType.LeyLine)) { hasLeyLine = true; break; }
|
||||
if (g.HasSpType(GridSpType.LeyLine) && CanPlaceLeyLine(g, cradleExclude)) { hasLeyLine = true; break; }
|
||||
if (hasLeyLine) continue;
|
||||
|
||||
// 没有则强制在2格内随机选一个合法格子放置
|
||||
for (int i = _aroundBuf.Count - 1; i > 0; i--)
|
||||
bool placedNearCradle = TryPlaceLeyLineAround(mapData, cradleGrid, 2, cradleExclude, true);
|
||||
if (placedNearCradle) continue;
|
||||
|
||||
int maxRadius = (int)(_width > _height ? _width : _height);
|
||||
bool placedByExpand = false;
|
||||
for (int radius = 3; radius <= maxRadius; radius++)
|
||||
{
|
||||
int j = Random.Range(0, i + 1);
|
||||
(_aroundBuf[i], _aroundBuf[j]) = (_aroundBuf[j], _aroundBuf[i]);
|
||||
}
|
||||
foreach (var g in _aroundBuf)
|
||||
{
|
||||
if (g.Terrain != TerrainType.Land) continue;
|
||||
if (g.Resource == ResourceType.CityCenter) continue;
|
||||
if (cradleExclude.Contains(g.Pos.PosId)) continue;
|
||||
g.SpTypeList.Add(GridSpType.LeyLine);
|
||||
break;
|
||||
if (TryPlaceLeyLineAround(mapData, cradleGrid, radius, cradleExclude, true))
|
||||
{
|
||||
placedByExpand = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (placedByExpand) continue;
|
||||
|
||||
for (int radius = 2; radius <= maxRadius; radius++)
|
||||
if (TryPlaceLeyLineAround(mapData, cradleGrid, radius, cradleExclude, false))
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
private bool TryPlaceLeyLineAround(MapData mapData, GridData centerGrid, int radius, HashSet<uint> cradleExclude, bool avoidNearbyLeyLine)
|
||||
{
|
||||
_aroundBuf ??= new List<GridData>();
|
||||
_aroundBuf.Clear();
|
||||
mapData.GridMap.GetAroundGridData(radius, radius, centerGrid, _aroundBuf);
|
||||
|
||||
for (int i = _aroundBuf.Count - 1; i > 0; i--)
|
||||
{
|
||||
int j = Random.Range(0, i + 1);
|
||||
(_aroundBuf[i], _aroundBuf[j]) = (_aroundBuf[j], _aroundBuf[i]);
|
||||
}
|
||||
|
||||
foreach (var grid in _aroundBuf)
|
||||
{
|
||||
if (!CanPlaceLeyLine(grid, cradleExclude)) continue;
|
||||
if (TryAddLeyLine(mapData, grid, cradleExclude, avoidNearbyLeyLine))
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
private bool TryAddLeyLine(MapData mapData, GridData grid, HashSet<uint> cradleExclude, bool avoidNearbyLeyLine)
|
||||
{
|
||||
if (!CanPlaceLeyLine(grid, cradleExclude)) return false;
|
||||
if (grid.HasSpType(GridSpType.LeyLine)) return false;
|
||||
if (avoidNearbyLeyLine && HasNearbyLeyLine(mapData, grid, 1)) return false;
|
||||
return grid.AddSpType(GridSpType.LeyLine, mapData, null);
|
||||
}
|
||||
|
||||
private bool HasNearbyLeyLine(MapData mapData, GridData grid, int radius)
|
||||
{
|
||||
for (int x = grid.Pos.X - radius; x <= grid.Pos.X + radius; x++)
|
||||
for (int y = grid.Pos.Y - radius; y <= grid.Pos.Y + radius; y++)
|
||||
{
|
||||
if (x == grid.Pos.X && y == grid.Pos.Y) continue;
|
||||
if (!mapData.GridMap.GetGridDataByPos(x, y, out var aroundGrid)) continue;
|
||||
if (aroundGrid.HasSpType(GridSpType.LeyLine)) return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
private bool CanPlaceLeyLine(GridData grid, HashSet<uint> cradleExclude)
|
||||
{
|
||||
if (grid == null) return false;
|
||||
if (grid.Terrain != TerrainType.Land) return false;
|
||||
if (grid.Feature == TerrainFeature.Mountain) return false;
|
||||
if (grid.Resource == ResourceType.CityCenter) return false;
|
||||
if (IsMapEdgeGrid(grid)) return false;
|
||||
if (cradleExclude.Contains(grid.Pos.PosId)) return false;
|
||||
return true;
|
||||
}
|
||||
|
||||
private bool IsMapEdgeGrid(GridData grid)
|
||||
{
|
||||
return grid.Pos.X <= 0 || grid.Pos.Y <= 0 || grid.Pos.X >= _width - 1 || grid.Pos.Y >= _height - 1;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@ -7,6 +7,8 @@
|
||||
|
||||
|
||||
using RuntimeData;
|
||||
using Logic.Action;
|
||||
using TH1_Anim.Fragments;
|
||||
using TH1_Logic.Core;
|
||||
using TH1Renderer;
|
||||
|
||||
@ -59,7 +61,22 @@ namespace Logic.Skill
|
||||
{
|
||||
int dmg = Table.Instance.CalcDamage(mapData, origin, target, damagePara:0.5f) * count;
|
||||
addDmg = dmg;
|
||||
Main.UnitLogic.DamageSettlement(mapData, origin, target, dmg, DamageType.FollowAttack);
|
||||
var visualCollector = ActionVisualEventCollector.Current;
|
||||
if (visualCollector != null && mapData == Main.MapData)
|
||||
{
|
||||
visualCollector.SettleDamageWithVisual(
|
||||
origin,
|
||||
target,
|
||||
dmg,
|
||||
DamageType.FollowAttack,
|
||||
AnimPhase.AttackImpact + 50,
|
||||
markMainTargetPreAttackKill: true,
|
||||
includeDamageVfx: false);
|
||||
}
|
||||
else
|
||||
{
|
||||
Main.UnitLogic.DamageSettlement(mapData, origin, target, dmg, DamageType.FollowAttack);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -8,8 +8,10 @@
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using Logic.Action;
|
||||
using MemoryPack;
|
||||
using RuntimeData;
|
||||
using TH1_Anim.Fragments;
|
||||
using TH1_DataAssetsScript;
|
||||
using TH1_Logic.Core;
|
||||
using TH1Renderer;
|
||||
@ -301,8 +303,19 @@ namespace Logic.Skill
|
||||
var tmpUnitId = unit.Id;
|
||||
var dmg = sameUnion ? _bigUnluckyFriendDmg : _bigUnluckyEnemyDmg;
|
||||
var canBeKilled = unit.CanBeKilled(mapData);
|
||||
var dmgInfo = Main.UnitLogic.DamageSettlement(mapData, originUnit, unit, dmg , sameUnion ? DamageType.KillSelf : DamageType.Splash);
|
||||
var visualCollector = ActionVisualEventCollector.Current;
|
||||
var dmgInfo = visualCollector != null && mapData == Main.MapData
|
||||
? visualCollector.SettleDamageWithVisual(
|
||||
originUnit,
|
||||
unit,
|
||||
dmg,
|
||||
sameUnion ? DamageType.KillSelf : DamageType.Splash,
|
||||
AnimPhase.AttackImpact + 50,
|
||||
(projInfo?.AnimTime ?? 0f) + waitTime,
|
||||
showoff: true)
|
||||
: Main.UnitLogic.DamageSettlement(mapData, originUnit, unit, dmg , sameUnion ? DamageType.KillSelf : DamageType.Splash);
|
||||
if (dmgInfo?.DamageTargetGrid == null) continue;
|
||||
if (visualCollector != null && mapData == Main.MapData) continue;
|
||||
//处理视觉
|
||||
if (dmgInfo.DamageTargetGrid.InMainSight())
|
||||
{
|
||||
@ -355,8 +368,19 @@ namespace Logic.Skill
|
||||
if (!sameUnion)
|
||||
{
|
||||
var canBeKilled = unit.CanBeKilled(mapData);
|
||||
var dmgInfo = Main.UnitLogic.DamageSettlement(mapData, originUnit, unit, _bigLuckyDmg , DamageType.Splash);
|
||||
var visualCollector = ActionVisualEventCollector.Current;
|
||||
var dmgInfo = visualCollector != null && mapData == Main.MapData
|
||||
? visualCollector.SettleDamageWithVisual(
|
||||
originUnit,
|
||||
unit,
|
||||
_bigLuckyDmg,
|
||||
DamageType.Splash,
|
||||
AnimPhase.AttackImpact + 50,
|
||||
(projInfo?.AnimTime ?? 0f) + waitTime,
|
||||
showoff: true)
|
||||
: Main.UnitLogic.DamageSettlement(mapData, originUnit, unit, _bigLuckyDmg , DamageType.Splash);
|
||||
if (dmgInfo?.DamageTargetGrid == null) continue;
|
||||
if (visualCollector != null && mapData == Main.MapData) continue;
|
||||
//处理视觉
|
||||
if (dmgInfo.DamageTargetGrid.InMainSight())
|
||||
{
|
||||
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: f8ae71b564487f04b93eb86d10dbee6b
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: f8ae71b564487f04b93eb86d10dbee6b
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: ea6b2813613f95244b72739ca5298b54
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: ea6b2813613f95244b72739ca5298b54
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 65875d63bef022340aff041d6045c69c
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: 65875d63bef022340aff041d6045c69c
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: f88262e8ea0f8e943b5e3ef5251bcd3c
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: f88262e8ea0f8e943b5e3ef5251bcd3c
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 781a6c40d412df6419381d6224aa2109
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: 781a6c40d412df6419381d6224aa2109
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 3babfd2badc8cb04188e467fe82ea66a
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: 3babfd2badc8cb04188e467fe82ea66a
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: b36e8dd25a0c90a47bc6da65d3c5ea43
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: b36e8dd25a0c90a47bc6da65d3c5ea43
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 4d2d20a4a501124438cdf92cf36de2cc
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: 4d2d20a4a501124438cdf92cf36de2cc
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: e6db9551f40eb6943b5cc39aab4603e0
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: e6db9551f40eb6943b5cc39aab4603e0
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 5a314fab7d840344e910a1cd454b1a3d
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: 5a314fab7d840344e910a1cd454b1a3d
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: d8e24bbd9aded0e479ee61c7796314d3
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: d8e24bbd9aded0e479ee61c7796314d3
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 7c61d0fc7766f3449a0cbc54c7158cff
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: 7c61d0fc7766f3449a0cbc54c7158cff
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: c472f04edfaaf5242b57e9a91b568af0
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: c472f04edfaaf5242b57e9a91b568af0
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: fc32ecc8ec4bfcb47abf75808bda67a5
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: fc32ecc8ec4bfcb47abf75808bda67a5
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 9c8d8cb029387bc49889aac68b58b790
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: 9c8d8cb029387bc49889aac68b58b790
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 75cd6ccb1a826964d84edfb791c80102
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: 75cd6ccb1a826964d84edfb791c80102
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 7a7830462656d2f49b42cd82806205d8
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: 7a7830462656d2f49b42cd82806205d8
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 85b3a8f79bb50944c9ae466c12c3f570
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: 85b3a8f79bb50944c9ae466c12c3f570
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 4b0cd2f6afba77c48a53205e2e8f8c93
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: 4b0cd2f6afba77c48a53205e2e8f8c93
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 140147a3ca9fd1e44b345c56de7a7d03
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: 140147a3ca9fd1e44b345c56de7a7d03
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 3aa336bda81da5e42b98390def28ff1f
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: 3aa336bda81da5e42b98390def28ff1f
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: caef0e96b5f3bf24c8e932d86e258774
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: caef0e96b5f3bf24c8e932d86e258774
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 6c0d8c8d45d04d640b37a51f6b8471e3
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: 6c0d8c8d45d04d640b37a51f6b8471e3
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 1ced0cd7c39ca0d42aec402b05a2f95b
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: 1ced0cd7c39ca0d42aec402b05a2f95b
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 8b6eafa759878d444865be2eacf9ff94
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: 8b6eafa759878d444865be2eacf9ff94
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 776d67a39f3935b41ae77e311db8a80c
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: 776d67a39f3935b41ae77e311db8a80c
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: eb82f7891da6d604c848d3afff617de1
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: eb82f7891da6d604c848d3afff617de1
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 5da0f5832a400284fb78b95eb3638a5e
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: 5da0f5832a400284fb78b95eb3638a5e
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 3917d494a3f843041ad25307f9b17cd1
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: 3917d494a3f843041ad25307f9b17cd1
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 97a5b77ada2db804a8e77c4f66298058
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: 97a5b77ada2db804a8e77c4f66298058
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: cc505689e40611b4e91c0f0fe8f40a11
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: cc505689e40611b4e91c0f0fe8f40a11
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 3b47d6733bc65034ba9f6f238196dbdc
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: 3b47d6733bc65034ba9f6f238196dbdc
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 732e7144e6e717c40baf6456c5288cf9
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: 732e7144e6e717c40baf6456c5288cf9
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: a740ffdcc5843d248b4ee69037aaacb2
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: a740ffdcc5843d248b4ee69037aaacb2
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 2650d19ccc2d7a64caa2a94298ea3901
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: 2650d19ccc2d7a64caa2a94298ea3901
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 54e8e9de21ab64649b39094eb24b3239
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: 54e8e9de21ab64649b39094eb24b3239
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: f5c18bff44f96fb44a8e08f4d5b1f2cd
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: f5c18bff44f96fb44a8e08f4d5b1f2cd
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 179b4d1e78a6168448df54d3e700fb5f
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: 179b4d1e78a6168448df54d3e700fb5f
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: c9269c33fbba14f47aa6ea969fea22a6
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: c9269c33fbba14f47aa6ea969fea22a6
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: a513ea03db0b3394b8674bfde66a08bf
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: a513ea03db0b3394b8674bfde66a08bf
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: c5153aa5f309b034891cf8b32d01914b
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: c5153aa5f309b034891cf8b32d01914b
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 7b06eca3ee635ca4aadfbc84b54b2bde
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: 7b06eca3ee635ca4aadfbc84b54b2bde
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: e71938c97066e7c47b93085b57e7e41c
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: e71938c97066e7c47b93085b57e7e41c
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: c74ac71107d26194ebc34bbb5873ac31
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: c74ac71107d26194ebc34bbb5873ac31
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 78bd90875a3aa9c4c877bd11e366a3e1
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: 78bd90875a3aa9c4c877bd11e366a3e1
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: cb80a5f3a312b364780c62302305a277
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: cb80a5f3a312b364780c62302305a277
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 7b8eaa156318d5845832e822cf296af9
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: 7b8eaa156318d5845832e822cf296af9
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: f36331648a56309459bdcf0afd8ca50b
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: f36331648a56309459bdcf0afd8ca50b
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: a4bfeb46b34e5da46b43458f7196439f
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: a4bfeb46b34e5da46b43458f7196439f
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 9c34720fffe970b489045f4f47745f8f
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: 9c34720fffe970b489045f4f47745f8f
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 3c76d79c10bf9fc4787527838509abbd
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: 3c76d79c10bf9fc4787527838509abbd
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: a612fa14c9fd0b245b7dde1c74fea678
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: a612fa14c9fd0b245b7dde1c74fea678
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 76059c05f7c1e9c4cb244b9bbc6e9d93
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: 76059c05f7c1e9c4cb244b9bbc6e9d93
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 595984441092805478fd488aea583cf9
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: 595984441092805478fd488aea583cf9
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 1b78929dd271747458f6ae865fee2d37
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: 1b78929dd271747458f6ae865fee2d37
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: a6e10c0890bbad94d8c0d15c9d03289a
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: a6e10c0890bbad94d8c0d15c9d03289a
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 9c4963c6cfc748c40996ff9c157fa7a0
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: 9c4963c6cfc748c40996ff9c157fa7a0
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: b725be5326961d846814b4902ac4a6c7
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: b725be5326961d846814b4902ac4a6c7
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: f5413a56a26c22a45926019efaa6742c
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: f5413a56a26c22a45926019efaa6742c
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 346f8aa650d9a8a489c0d41683a9ec48
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: 346f8aa650d9a8a489c0d41683a9ec48
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 18a1b701d2f585741a5b4f5ad6b7a85f
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: 18a1b701d2f585741a5b4f5ad6b7a85f
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: ebfa558b9a4117d49943b113279a7df7
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: ebfa558b9a4117d49943b113279a7df7
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: e41e9c55c6bb8bb41a24fe04d42d84b0
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: e41e9c55c6bb8bb41a24fe04d42d84b0
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: ac62ae85793ecd04e893e26effbd3896
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: ac62ae85793ecd04e893e26effbd3896
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 6d374a07875060146ac924b1d3d97b28
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: 6d374a07875060146ac924b1d3d97b28
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 9ccf34423d0712546993b8fbbbee6bf2
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: 9ccf34423d0712546993b8fbbbee6bf2
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 24f362b5a6e949046b1033f02dcd4622
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: 24f362b5a6e949046b1033f02dcd4622
|
||||
@ -1,11 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 4bd9b8533486b11448cd37aafa30934c
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
guid: 4bd9b8533486b11448cd37aafa30934c
|
||||