public void SetWeapon(Unit unit, Weapon weapon) { Unit.ManagerState.WeaponData weaponData = unit.manState.weaponData; weaponData.wieldingWeapon = weapon; if (weapon == null) { return; } weapon.SetWielder(unit); weapon.transform.parent = weaponData.parentNode; weapon.transform.localPosition = Vector3.zero; weapon.transform.localRotation = Quaternion.identity; }
void UpdateWeapon(Unit unit) { Unit.ManagerState.WeaponData weaponData = unit.manState.weaponData; if (weaponData.wieldingWeapon == null) { return; } if (unit.state.momentary.fireInput) { weaponData.wieldingWeapon.Fire(); } if (unit.state.momentary.weaponChangeInput) { SwitchWeapon(unit); } }