#pragma once #include #include "KingSystem/Resource/GeneralParamList/resGParamListObject.h" #include "KingSystem/Utils/Types.h" namespace ksys::res { class GParamListObjectBow : public GParamListObject { public: GParamListObjectBow(); const char* getName() const override { return "Bow"; } agl::utl::Parameter mQuiverName; agl::utl::Parameter mArrowName; agl::utl::Parameter mIsGuardPierce; agl::utl::Parameter mExtraDamageRatio; agl::utl::Parameter mBaseAttackPowerRatio; agl::utl::Parameter mIsLeadShot; agl::utl::Parameter mLeadShotNum; agl::utl::Parameter mLeadShotAng; agl::utl::Parameter mLeadShotInterval; agl::utl::Parameter mIsRapidFire; agl::utl::Parameter mRapidFireNum; agl::utl::Parameter mRapidFireInterval; agl::utl::Parameter mIsLongRange; agl::utl::Parameter mArrowFirstSpeed; agl::utl::Parameter mArrowAcceleration; agl::utl::Parameter mArrowStabilitySpeed; agl::utl::Parameter mArrowFallAcceleration; agl::utl::Parameter mArrowFallStabilitySpeed; agl::utl::Parameter mArrowGravity; agl::utl::Parameter mPlayerHoldTransOffset; agl::utl::Parameter mPlayerHoldRotOffset; agl::utl::Parameter mPlayerEquipTransOffset; agl::utl::Parameter mPlayerEquipRotOffset; agl::utl::Parameter mSquatPlayerHoldTransAddOffset; agl::utl::Parameter mSquatPlayerHoldRotAddOffset; agl::utl::Parameter mNPCHoldTransOffset; agl::utl::Parameter mNPCHoldRotOffset; agl::utl::Parameter mNPCEquipTransOffset; agl::utl::Parameter mNPCEquipRotOffset; agl::utl::Parameter mEnemyEquipTransOffset; agl::utl::Parameter mEnemyEquipRotOffset; agl::utl::Parameter mStandEquipTransOffset; agl::utl::Parameter mStandEquipRotOffset; agl::utl::Parameter mArrowChargeRate; agl::utl::Parameter mArrowReloadRate; agl::utl::Parameter mWeaponSubType; }; KSYS_CHECK_SIZE_NX150(GParamListObjectBow, 0x540); inline GParamListObjectBow::GParamListObjectBow() { auto* const obj = &mObj; mQuiverName.init("", "QuiverName", "", obj); mArrowName.init("", "ArrowName", "", obj); mIsGuardPierce.init(false, "IsGuardPierce", "", obj); mExtraDamageRatio.init(1.0, "ExtraDamageRatio", "", obj); mBaseAttackPowerRatio.init(1.0, "BaseAttackPowerRatio", "", obj); mIsLeadShot.init(false, "IsLeadShot", "", obj); mLeadShotNum.init(0, "LeadShotNum", "", obj); mLeadShotAng.init(45.0, "LeadShotAng", "", obj); mLeadShotInterval.init(0, "LeadShotInterval", "", obj); mIsRapidFire.init(false, "IsRapidFire", "", obj); mRapidFireNum.init(0, "RapidFireNum", "", obj); mRapidFireInterval.init(0, "RapidFireInterval", "", obj); mIsLongRange.init(false, "IsLongRange", "", obj); mArrowFirstSpeed.init(4.5, "ArrowFirstSpeed", "", obj); mArrowAcceleration.init(-0.1, "ArrowAcceleration", "", obj); mArrowStabilitySpeed.init(3.0, "ArrowStabilitySpeed", "", obj); mArrowFallAcceleration.init(-0.2, "ArrowFallAcceleration", "", obj); mArrowFallStabilitySpeed.init(1.0, "ArrowFallStabilitySpeed", "", obj); mArrowGravity.init(-9.8, "ArrowGravity", "", obj); mPlayerHoldTransOffset.init({-0.2, -0.01, 0.0}, "PlayerHoldTransOffset", "", obj); mPlayerHoldRotOffset.init({12.0, -60.0, -22.0}, "PlayerHoldRotOffset", "", obj); mPlayerEquipTransOffset.init({0.0, 0.0, 0.0}, "PlayerEquipTransOffset", "", obj); mPlayerEquipRotOffset.init({0.0, 0.0, 0.0}, "PlayerEquipRotOffset", "", obj); mSquatPlayerHoldTransAddOffset.init({0.0, 0.0, 0.0}, "SquatPlayerHoldTransAddOffset", "", obj); mSquatPlayerHoldRotAddOffset.init({0.0, 0.0, 0.0}, "SquatPlayerHoldRotAddOffset", "", obj); mNPCHoldTransOffset.init({0.0, 0.0, 0.0}, "NPCHoldTransOffset", "", obj); mNPCHoldRotOffset.init({0.0, 0.0, 0.0}, "NPCHoldRotOffset", "", obj); mNPCEquipTransOffset.init({0.0, 0.0, 0.0}, "NPCEquipTransOffset", "", obj); mNPCEquipRotOffset.init({0.0, 0.0, 0.0}, "NPCEquipRotOffset", "", obj); mEnemyEquipTransOffset.init({0.0, 0.0, 0.0}, "EnemyEquipTransOffset", "", obj); mEnemyEquipRotOffset.init({0.0, 0.0, 0.0}, "EnemyEquipRotOffset", "", obj); mStandEquipTransOffset.init({0.0, 0.0, 0.0}, "StandEquipTransOffset", "", obj); mStandEquipRotOffset.init({0.0, 0.0, 0.0}, "StandEquipRotOffset", "", obj); mArrowChargeRate.init(1.0, "ArrowChargeRate", "", obj); mArrowReloadRate.init(1.0, "ArrowReloadRate", "", obj); mWeaponSubType.init("", "WeaponSubType", "", obj); } } // namespace ksys::res