1
This commit is contained in:
@@ -625,13 +625,19 @@ public class CreateFishManager : MonoSingleton<CreateFishManager>
|
||||
if (data == null || data.fish == null || data.fish.Count == 0) return;
|
||||
if (isFrozen) return; // 冰冻中不创建鱼
|
||||
if (spawnDic == null) return; // 场景卸载后忽略
|
||||
|
||||
|
||||
foreach (var item in data.fish)
|
||||
{
|
||||
if (item == null) continue;
|
||||
Debug.Log("差值:"+(BeijingTimeManager.Instance.CurrentTimestampMs-item.createdAt)/1000);
|
||||
Debug.Log("差值:"+(BeijingTimeManager.Instance.CurrentTimestampMs-item.createdAt));
|
||||
Debug.Log("差值:"+BeijingTimeManager.Instance.CurrentTimestampMs+"创建\n"+item.createdAt);
|
||||
//BeijingTimeManager.Instance.SyncBeijingTime(() =>
|
||||
//{
|
||||
// Debug.Log("差值:" + (BeijingTimeManager.Instance.CurrentTimestampMs - item.createdAt) / 1000);
|
||||
// Debug.Log("差值:" + (BeijingTimeManager.Instance.CurrentTimestampMs - item.createdAt));
|
||||
// Debug.Log("差值:" + BeijingTimeManager.Instance.CurrentTimestampMs + "创建\n" + item.createdAt);
|
||||
//});
|
||||
Debug.Log("差值:" + (BeijingTimeManager.Instance.CurrentTimestampMs - item.createdAt) / 1000);
|
||||
Debug.Log("差值:" + (BeijingTimeManager.Instance.CurrentTimestampMs - item.createdAt));
|
||||
Debug.Log("差值:" + BeijingTimeManager.Instance.CurrentTimestampMs + "创建\n" + item.createdAt);
|
||||
|
||||
// ⭐ 鱼阵时 fishNumber 为空,用 fishArrayNumber 作为配置 key;
|
||||
// 单体鱼时 fishNumber 非空,直接用 fishNumber
|
||||
@@ -806,7 +812,35 @@ public class CreateFishManager : MonoSingleton<CreateFishManager>
|
||||
var mc = fish.GetComponent<MonsterContral>() ?? fish.AddComponent<MonsterContral>();
|
||||
mc.monsterData.fishTypeConfig = FishDatas[createFishData.fishNumber];
|
||||
mc.guid = createFishData.guid;
|
||||
mc.moveTime = (BeijingTimeManager.Instance.CurrentTimestampMs - time) / 1000f;
|
||||
|
||||
// ⭐ moveTime 计算:当前时间 - 创建时间(秒)
|
||||
float elapsedSec = (BeijingTimeManager.Instance.CurrentTimestampMs - time) / 1000f;
|
||||
|
||||
// ⭐ 创建视频时长抵扣:
|
||||
// - 配置了 createVideoClip 且 elapsedSec < 视频时长:视频还没播完
|
||||
// → moveTime=0(视频继续播),OnMoveUpdata 会跳过移动直到视频结束
|
||||
// - 配置了 createVideoClip 且 elapsedSec >= 视频时长:视频已播完
|
||||
// → moveTime = elapsedSec - 视频时长(视频结束后才开始累计路线时间)
|
||||
// - 未配置 createVideoClip:moveTime = elapsedSec(原逻辑)
|
||||
if (mc.createVideoClip != null)
|
||||
{
|
||||
float videoDuration = (float)mc.createVideoClip.length;
|
||||
if (elapsedSec < videoDuration)
|
||||
{
|
||||
// 视频还没播完,继续播放(Init 里会启动 createVideoPlayer)
|
||||
mc.moveTime = 0f;
|
||||
}
|
||||
else
|
||||
{
|
||||
// 视频已播完,扣除视频时长,moveTime 为视频结束后已走的路线时间
|
||||
mc.moveTime = elapsedSec - videoDuration;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
mc.moveTime = elapsedSec;
|
||||
}
|
||||
|
||||
mc.fishenum = (FishTypeEnum)fishType.fishType;
|
||||
// 按鱼类型放入对应字典
|
||||
RegisterFishInstance(mc, fishType.fishType);
|
||||
|
||||
Reference in New Issue
Block a user