\r
using System;\r
using System.Linq;\r
+using System.Web;\r
\r
namespace KancolleSniffer\r
{\r
}\r
}\r
\r
+ public void InspectNyukyo(string request)\r
+ {\r
+ var values = HttpUtility.ParseQueryString(request);\r
+ if (int.Parse(values["api_highspeed"]) == 0)\r
+ return;\r
+ RecoverShip(int.Parse(values["api_ship_id"]));\r
+ _itemInfo.MaterialHistory[(int)Material.Bucket].Now--;\r
+ }\r
+\r
+ public void InspectSpeedChange(string request)\r
+ {\r
+ var values = HttpUtility.ParseQueryString(request);\r
+ var dock = int.Parse(values["api_ndock_id"]) - 1;\r
+ RecoverShip(_ndoc[dock]);\r
+ _ndoc[dock] = 0;\r
+ _ndocTimers[dock].SetEndTime(0);\r
+ }\r
+\r
+ private void RecoverShip(int id)\r
+ {\r
+ var ship = _shipInfo[id];\r
+ ship.NowHp = ship.MaxHp;\r
+ if (ship.Cond < 40)\r
+ ship.Cond = 40;\r
+ }\r
+\r
public NameAndTimer[] NDock\r
{\r
get\r
WithdrowShip(of, oi);\r
if (of != fleet)\r
_conditionTimer.Invalidate(of);\r
- };\r
+ }\r
_decks[fleet][idx] = ship;\r
_conditionTimer.Invalidate(fleet);\r
}\r
return _shipInfo[id].Slot.Count(item => item != -1);\r
}\r
\r
- public void InspectNyukyo(string request)\r
- {\r
- var values = HttpUtility.ParseQueryString(request);\r
- var id = int.Parse(values["api_ship_id"]);\r
- if (int.Parse(values["api_highspeed"]) == 0)\r
- return;\r
- var ship = _shipInfo[id];\r
- ship.NowHp = ship.MaxHp;\r
- if (ship.Cond < 40)\r
- ship.Cond = 40;\r
- _itemInfo.MaterialHistory[(int)Material.Bucket].Now--;\r
- }\r
-\r
public ShipStatus[] GetShipStatuses(int fleet)\r
{\r
return (from id in _decks[fleet] where id != -1 select _shipInfo[id]).ToArray();\r
}\r
if (url.EndsWith("api_req_nyukyo/start"))\r
{\r
- _shipInfo.InspectNyukyo(request);\r
+ _dockInfo.InspectNyukyo(request);\r
return Update.Item | Update.Ship;\r
}\r
+ if (url.EndsWith("api_req_nyukyo/speedchange"))\r
+ {\r
+ _dockInfo.InspectSpeedChange(request);\r
+ return Update.NDock | Update.Timer | Update.Ship;\r
+ }\r
if (IsNormalBattleAPI(url))\r
{\r
_battleInfo.InspectBattle(data);\r