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 void reset(bool retire) { base.reset(); Controller.isDead = false; MaxHunger = BasisParameter.InitHunger; CurrentHunger = MaxHunger; CurrentHungerSpeed = BasisParameter.InitHugerSpeed; NextHungerCount = InitHunger; AutoHealSpeed = DefaultAutoHealSpeed; NextAutoHealCount = DefaultAutoHealSpeed; setLelelAtk(); if (retire) { Inventory.clear(); Weapon = WeaponBasis.Dummy; Shield = ShieldBasis.Dummy; ShotItem = ShotItemBasis.Dummy; Bangles = new BangleBasis[] { BangleBasis.Dummy, BangleBasis.Dummy }; Pocket /= 10; } }
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); }