本帖最後由 terrywany2k 於 2015-1-30 09:21 編輯
其實每打完一關(無論劇情/協力), 都會發送你打那一關時的數據..... 抱括..
1. 有效攻擊次數.
2. 總傷害量.
3. 用了多少次技..
4. 用了多少時間..
等等...
就在"QuestCompleteSendParam"內....
大約代碼如下..
- public QuestCompleteSendParam(InGameManager.Result result)
- {
- this.qt = string.Empty;
- this.cardIds = new List<int>();
- this.weaponIds = new List<int>();
- this.ornamentIds = new List<int>();
- this.itemIds = new List<int>();
- this.destroyEnemyIds = new List<int>();
- this.destroyObjectIds = new List<int>();
- this.openTreasureIds = new List<int>();
- this.gold = (int) result.gold;
- this.soul = (int) result.soul;
- if (<>f__am$cache1B == null)
- {
- <>f__am$cache1B = new Converter<XorInt, int>(QuestCompleteSendParam.<QuestCompleteSendParam>m__FD);
- }
- this.cardIds = result.cardIds.ConvertAll<int>(<>f__am$cache1B);
- if (<>f__am$cache1C == null)
- {
- <>f__am$cache1C = new Converter<XorInt, int>(QuestCompleteSendParam.<QuestCompleteSendParam>m__FE);
- }
- this.weaponIds = result.weaponIds.ConvertAll<int>(<>f__am$cache1C);
- if (<>f__am$cache1D == null)
- {
- <>f__am$cache1D = new Converter<XorInt, int>(QuestCompleteSendParam.<QuestCompleteSendParam>m__FF);
- }
- this.ornamentIds = result.ornamentIds.ConvertAll<int>(<>f__am$cache1D);
- if (<>f__am$cache1E == null)
- {
- <>f__am$cache1E = new Converter<XorInt, int>(QuestCompleteSendParam.<QuestCompleteSendParam>m__100);
- }
- this.itemIds = result.itemIds.ConvertAll<int>(<>f__am$cache1E);
- if (<>f__am$cache1F == null)
- {
- <>f__am$cache1F = new Converter<XorInt, int>(QuestCompleteSendParam.<QuestCompleteSendParam>m__101);
- }
- this.destroyEnemyIds = new List<int>(result.destroyEnemyIds.ConvertAll<int>(<>f__am$cache1F));
- if (<>f__am$cache20 == null)
- {
- <>f__am$cache20 = new Converter<XorInt, int>(QuestCompleteSendParam.<QuestCompleteSendParam>m__102);
- }
- this.destroyObjectIds = new List<int>(result.destroyObjectIds.ConvertAll<int>(<>f__am$cache20));
- if (<>f__am$cache21 == null)
- {
- <>f__am$cache21 = new Converter<XorInt, int>(QuestCompleteSendParam.<QuestCompleteSendParam>m__103);
- }
- this.openTreasureIds = new List<int>(result.openTreasureIds.ConvertAll<int>(<>f__am$cache21));
- this.totalDamageCount = (int) result.TotalDamageNum;
- this.totalDamageAmount = (int) result.TotalDamageAmount;
- this.totalDamageCountFromPlacementObject = (int) result.TotalDamageNumFromPlacementObject;
- this.totalDeadCount = (int) result.TotalDeadNum;
- this.totalHelperDeadCount = (int) result.TotalHelperDeadNum;
- this.totalBadStatusCount = (int) result.TotalBadStatusNum;
- this.totalUseActionSkillNum = (int) result.TotalUseActionSkillNum;
- this.totalUseHealActionSkillNum = (int) result.TotalUseHealActionSkillNum;
- this.maxChainNum = (int) result.MaxChainNum;
- this.routeId = (int) result.RouteId;
- this.playingTime = (int) result.PlayingTime;
- this.restTime = (int) result.RestTime;
- }
複製代碼
通過StageManagerStateResult內的RequestQuestComplete發送...
發送的代碼如下
- private void RequestQuestComplete(Action<QuestCompleteModel> onComplete)
- {
- <RequestQuestComplete>c__AnonStorey162 storey = new <RequestQuestComplete>c__AnonStorey162 {
- onComplete = onComplete,
- <>f__this = this
- };
- QuestCompleteSendParam postData = new QuestCompleteSendParam(Singleton<InGameManager>.I.result) {
- qt = Singleton<InGameManager>.I.generate.qt
- };
- if (Singleton<CoopManager>.I.IsCoop)
- {
- postData.gt = (int) Singleton<CoopManager>.I.gameType;
- }
- else
- {
- postData.gt = -1;
- }
- Singleton<NetworkManager>.I.Request<QuestCompleteSendParam, QuestCompleteModel>(QuestCompleteModel.URL, postData, new Action<QuestCompleteModel>(storey.<>m__12C), string.Empty);
- }
複製代碼
所以.. 除非不抓. 要不然必定抓得到... |