feat(battle-engine): full Unity/VFX/god-object shims + expanded copy closure (2570 files)
Authored Unity primitive/object-model shim, VFX layer (control-flow-preserving, InstantVfx never invokes its action -- headless suppression), god-object stubs (GameMgr/EffectMgr/UIManager with faithfully-extracted nested enums), View/UI/Touch tree, LitJson+BetterList+Tuple copied, third-party stubs. Discovered Roslyn header-error masking: fixing class-header type errors unmasks body references, so the true copy closure is ~2570 files (was 782 under masking). Errors: masked-25720 -> 268; our shim files compile clean. Remaining: ~50 residual shim/external types, 24 NGUI UI-base overrides, static-type fixes, plus likely 1-2 more unmask waves.
This commit is contained in:
76
SVSim.BattleEngine/Engine/Wizard/BattlePassMonthlyMission.cs
Normal file
76
SVSim.BattleEngine/Engine/Wizard/BattlePassMonthlyMission.cs
Normal file
@@ -0,0 +1,76 @@
|
||||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using LitJson;
|
||||
|
||||
namespace Wizard;
|
||||
|
||||
public class BattlePassMonthlyMission
|
||||
{
|
||||
public class MissionDetail
|
||||
{
|
||||
public class RewardInfo
|
||||
{
|
||||
public UserGoods UserGoods { get; private set; }
|
||||
|
||||
public int Number { get; private set; }
|
||||
|
||||
public RewardInfo(UserGoods.Type rewardType, long rewardDetailId, int rewardNumber)
|
||||
{
|
||||
UserGoods = new UserGoods(rewardType, rewardDetailId);
|
||||
Number = rewardNumber;
|
||||
}
|
||||
}
|
||||
|
||||
public string Name { get; private set; }
|
||||
|
||||
public bool IsCleared { get; private set; }
|
||||
|
||||
public int BattlePassPoint { get; private set; }
|
||||
|
||||
public int RequireNumber { get; private set; }
|
||||
|
||||
public int DoneNumber { get; private set; }
|
||||
|
||||
public RewardInfo Reward { get; private set; }
|
||||
|
||||
public MissionDetail(JsonData jsonMissionData)
|
||||
{
|
||||
Name = jsonMissionData["name"].ToString();
|
||||
IsCleared = jsonMissionData["is_cleared"].ToBoolean();
|
||||
BattlePassPoint = jsonMissionData["battle_pass_point"].ToInt();
|
||||
RequireNumber = jsonMissionData["require_number"].ToInt();
|
||||
DoneNumber = jsonMissionData["done_number"].ToInt();
|
||||
if (jsonMissionData.Keys.Contains("reward_info"))
|
||||
{
|
||||
JsonData jsonData = jsonMissionData["reward_info"];
|
||||
int rewardType = jsonData["reward_type"].ToInt();
|
||||
long rewardDetailId = jsonData["reward_detail_id"].ToLong();
|
||||
int rewardNumber = jsonData["reward_number"].ToInt();
|
||||
Reward = new RewardInfo((UserGoods.Type)rewardType, rewardDetailId, rewardNumber);
|
||||
}
|
||||
else
|
||||
{
|
||||
Reward = null;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public DateTime StartDate { get; private set; }
|
||||
|
||||
public string EndDate { get; private set; }
|
||||
|
||||
public List<MissionDetail> MissionList { get; private set; }
|
||||
|
||||
public BattlePassMonthlyMission(JsonData jsonBattlePassMonthlyMission)
|
||||
{
|
||||
StartDate = DateTime.Parse(jsonBattlePassMonthlyMission["start_date"].ToString());
|
||||
EndDate = jsonBattlePassMonthlyMission["end_date"].ToString();
|
||||
JsonData jsonData = jsonBattlePassMonthlyMission["mission_list"];
|
||||
MissionList = new List<MissionDetail>();
|
||||
foreach (JsonData item in (IEnumerable)jsonData)
|
||||
{
|
||||
MissionList.Add(new MissionDetail(item));
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user