public void registerEquipment(EquipmentItemBasis equipment) { //Debug.logger.Log("装備登録", string.Format("O:{0} E:{1}", Equipment, equipment)); Equipment = equipment; }
public EquipmentItemBasis removeEquipment(EquipmentItemBasis equip,bool playsound,bool forcedremove) { EquipmentItemBasis ret=null; Debug.logger.LogFormat(LogType.Log, "Remove {0}", equip.Name); switch (equip.Code) { case ItemBasis.ItemCode.WEAPON: ret = Weapon; break; case ItemBasis.ItemCode.SHIELD: ret = Shield; break; case ItemBasis.ItemCode.SHOTITEM: ret = ShotItem; break; case ItemBasis.ItemCode.BANGLE: int idx = Array.IndexOf(Bangles, equip as BangleBasis); Debug.logger.LogFormat(LogType.Log, "Remove {0}:{1}", equip.Name, idx); idx = idx >= 0 ? idx : nextbanglepos; Debug.logger.LogFormat(LogType.Log, "Remove {0}:{1}", equip.Name, idx); ret = Bangles[idx]; break; } if (ret != null) { if (ret.IsCursed && !forcedremove) { GameController.PlayingLogger.addLogFormat("{0} は呪われていて外せない!",ret.Name); return null; } else { ret.remove(); switch (ret.Code) { case ItemBasis.ItemCode.WEAPON: Weapon = WeaponBasis.Dummy; break; case ItemBasis.ItemCode.SHIELD: Shield = ShieldBasis.Dummy; break; case ItemBasis.ItemCode.SHOTITEM: ShotItem = ShotItemBasis.Dummy; break; case ItemBasis.ItemCode.BANGLE: int idx = Array.IndexOf(Bangles, ret); Bangles[idx] = BangleBasis.Dummy; break; } } if (playsound) GameController.SoundController.playSE(SoundNameList.Player_Equip); return ret; } else { return null; } }
public bool swapEquipment(EquipmentItemBasis item,bool playsound = true) { var ret = removeEquipment(item,playsound,false); if (ret != null) { equip(item, playsound); return true; } return false; }
public void equip(EquipmentItemBasis equipment,bool playsound = true,bool fromsavedata = false) { Debug.LogFormat("{0}",equipment.Name); equipment.equip(this.Controller as PlayerController,fromsavedata); if (equipment is WeaponBasis) { Weapon = equipment as WeaponBasis; } else if (equipment is ShieldBasis) { Shield = equipment as ShieldBasis; } else if (equipment is ShotItemBasis) { ShotItem = equipment as ShotItemBasis; } else if (equipment is BangleBasis) { Bangles[nextbanglepos] = equipment as BangleBasis; nextbanglepos = (nextbanglepos + 1) % Bangles.Length; } if(playsound) GameController.SoundController.playSE(SoundNameList.Player_Equip); }
public bool equippingOtherEquipment(EquipmentItemBasis target) { if (target is WeaponBasis) { return Weapon != WeaponBasis.Dummy && (WeaponBasis)target != Weapon; } else if (target is ShieldBasis) { return Shield != ShieldBasis.Dummy && (ShieldBasis)target != Shield; } else if (target is ShotItemBasis) { return ShotItem != ShotItemBasis.Dummy && (ShotItemBasis)target != ShotItem; } else if (target is BangleBasis) { return Array.TrueForAll(Bangles, b => b != BangleBasis.Dummy && (BangleBasis)target != b); } return false; }
public void removeEquipmen(PlayerController character, EquipmentItemBasis equipment) { string str = character.Parameter.Name + "は" + equipment.Name + "をはずした。"; addLog(str); //throw new NotImplementedException(); }
public void removeEquipment(EquipmentItemBasis item, bool showlog,bool playsound,bool forcedremove) { EquipmentItemBasis remove = Parameter.removeEquipment(item,playsound,forcedremove); if (remove == null) return; if (showlog) GameController.PlayingLogger.removeEquipmen(this, remove); }
public bool equiped(EquipmentItemBasis target) { if (target == null) return false; return Parameter.Weapon == target || Parameter.Shield == target || Parameter.ShotItem == target || Array.Exists(Parameter.Bangles,b => b== target); }
public void equip(EquipmentItemBasis equipment,bool playsound) { //Debug.Log("OtherEquipment?:"+Parameter.equippingOtherEquipment(equipment)); bool success = true; bool otherequip = Parameter.equippingOtherEquipment(equipment); Debug.logger.LogFormat(LogType.Log,"{0} : {1}",equipment.Name,otherequip); if (otherequip) { success = Parameter.swapEquipment(equipment,playsound); } else { Parameter.equip(equipment,playsound); } if (success) { GameController.PlayingLogger.equip(this, equipment); if (equipment.IsCursed) { GameController.PlayingLogger.addLogFormat("{0} は呪われていた!", equipment.Name); GameController.SoundController.playSE(SoundNameList.SE_ItemCursed); } } }
public CMD_RemovaEqipment(PlayerController owner, EquipmentItemBasis target) : base(owner) { Target = target; }