/// <summary> /// 舰娘能否佩戴该装备,可以返回true,否则返回false;舰娘、装备没有找到都返回false /// </summary> /// <param name="shipId">舰娘id</param> /// <param name="itemId">装备id</param> /// <returns></returns> public bool CanShipEquipItem(int shipId, int itemId) { KancolleShipData ship; if (ShipDataDictionary.TryGetValue(shipId, out ship)) { KancolleShipType shipType; //找到舰娘类型 if (ShipTypeDictionary.TryGetValue(ship.Type, out shipType)) { //舰娘的可装备字典 var dic = shipType.EquipItemType; KancolleSlotItemData item; //找到装备 if (SlotDictionary.TryGetValue(itemId, out item)) { //item3为该装备的装备类型 if (dic.ContainsKey(item.Type.Item3)) { //可装备(1)则为true,否则为false return(dic[item.Type.Item3] != 0); } } } } return(false); }
/// <summary> /// 获取舰娘类型id,若不存在返回-1 /// </summary> /// <param name="ownedShip"></param> /// <returns></returns> public int GetShipType(KancolleShip ownedShip) { KancolleShipData shipData; if (ShipDataDictionary.TryGetValue(ownedShip.No, out shipData)) { return(shipData.Type); } return(-1); }
/// <summary> /// 获取舰娘名,若不存在返回null /// </summary> /// <param name="ownedShip"></param> /// <returns></returns> public string GetShipName(KancolleShip ownedShip) { KancolleShipData shipData; if (ShipDataDictionary.TryGetValue(ownedShip.ShipId, out shipData)) { return(shipData.Name); } return(null); }
/// <summary> /// 从ownedShip获得数据库的shipData,若不存在返回null /// </summary> /// <param name="ownedShip"></param> /// <returns></returns> public KancolleShipData GetShip(KancolleShip ownedShip) { KancolleShipData shipData; if (ShipDataDictionary.TryGetValue(ownedShip.No, out shipData)) { return(shipData); } return(null); }