mirror of
https://github.com/DrBeef/JKXR.git
synced 2024-11-25 05:21:00 +00:00
Implement separate saber pitch adjustment
it uses the OpenXR grip pose and an adjuster separate to the weapon one
This commit is contained in:
parent
bc5fd7073e
commit
ca40a99ec1
19 changed files with 324 additions and 139 deletions
|
@ -19,7 +19,7 @@ XrResult CheckXrResult(XrResult res, const char* originator) {
|
|||
|
||||
XrActionSet actionSet = nullptr;
|
||||
XrAction grabAction;
|
||||
XrAction poseAction;
|
||||
XrAction gripAction;
|
||||
XrAction vibrateAction;
|
||||
XrAction quitAction;
|
||||
XrAction touchpadAction;
|
||||
|
@ -27,7 +27,7 @@ XrAction AXAction;
|
|||
XrAction homeAction;
|
||||
XrAction BYAction;
|
||||
XrAction backAction;
|
||||
XrAction sideAction;
|
||||
XrAction squeezeClickAction;
|
||||
XrAction triggerAction;
|
||||
XrAction joystickAction;
|
||||
XrAction batteryAction;
|
||||
|
@ -36,7 +36,7 @@ XrAction BYTouchAction;
|
|||
XrAction thumbstickTouchAction;
|
||||
XrAction TriggerTouchAction;
|
||||
XrAction ThumbrestTouchAction;
|
||||
XrAction GripAction;
|
||||
XrAction squeezeAction;
|
||||
XrAction AAction;
|
||||
XrAction BAction;
|
||||
XrAction XAction;
|
||||
|
@ -152,7 +152,7 @@ void TBXR_InitActions( void )
|
|||
CreateAction(actionSet, XR_ACTION_TYPE_POSE_INPUT, "grab_object", "Grab Object", SIDE_COUNT, handSubactionPath, &grabAction);
|
||||
|
||||
// Create an input action getting the left and right hand poses.
|
||||
CreateAction(actionSet, XR_ACTION_TYPE_POSE_INPUT, "hand_pose", "Hand Pose", SIDE_COUNT, handSubactionPath, &poseAction);
|
||||
CreateAction(actionSet, XR_ACTION_TYPE_POSE_INPUT, "grip_pose", "Grip Pose", SIDE_COUNT, handSubactionPath, &gripAction);
|
||||
CreateAction(actionSet, XR_ACTION_TYPE_POSE_INPUT, "aim_pose", "Aim Pose", SIDE_COUNT, handSubactionPath, &aimAction);
|
||||
|
||||
// Create output actions for vibrating the left and right controller.
|
||||
|
@ -165,7 +165,7 @@ void TBXR_InitActions( void )
|
|||
CreateAction(actionSet, XR_ACTION_TYPE_BOOLEAN_INPUT, "homekey", "Homekey", SIDE_COUNT, handSubactionPath, &homeAction);
|
||||
CreateAction(actionSet, XR_ACTION_TYPE_BOOLEAN_INPUT, "bykey", "BYkey", SIDE_COUNT, handSubactionPath, &BYAction);
|
||||
CreateAction(actionSet, XR_ACTION_TYPE_BOOLEAN_INPUT, "backkey", "Backkey", SIDE_COUNT, handSubactionPath, &backAction);
|
||||
CreateAction(actionSet, XR_ACTION_TYPE_BOOLEAN_INPUT, "sidekey", "Sidekey", SIDE_COUNT, handSubactionPath, &sideAction);
|
||||
CreateAction(actionSet, XR_ACTION_TYPE_BOOLEAN_INPUT, "sidekey", "Sidekey", SIDE_COUNT, handSubactionPath, &squeezeClickAction);
|
||||
CreateAction(actionSet, XR_ACTION_TYPE_FLOAT_INPUT, "trigger", "Trigger", SIDE_COUNT, handSubactionPath, &triggerAction);
|
||||
CreateAction(actionSet, XR_ACTION_TYPE_VECTOR2F_INPUT, "joystick", "Joystick", SIDE_COUNT, handSubactionPath, &joystickAction);
|
||||
CreateAction(actionSet, XR_ACTION_TYPE_FLOAT_INPUT, "battery", "battery", SIDE_COUNT, handSubactionPath, &batteryAction);
|
||||
|
@ -174,7 +174,7 @@ void TBXR_InitActions( void )
|
|||
CreateAction(actionSet, XR_ACTION_TYPE_BOOLEAN_INPUT, "rockertouch", "Rockertouch", SIDE_COUNT, handSubactionPath, &thumbstickTouchAction);
|
||||
CreateAction(actionSet, XR_ACTION_TYPE_BOOLEAN_INPUT, "triggertouch", "Triggertouch", SIDE_COUNT, handSubactionPath, &TriggerTouchAction);
|
||||
CreateAction(actionSet, XR_ACTION_TYPE_BOOLEAN_INPUT, "thumbresttouch", "Thumbresttouch", SIDE_COUNT, handSubactionPath, &ThumbrestTouchAction);
|
||||
CreateAction(actionSet, XR_ACTION_TYPE_FLOAT_INPUT, "gripvalue", "GripValue", SIDE_COUNT, handSubactionPath, &GripAction);
|
||||
CreateAction(actionSet, XR_ACTION_TYPE_FLOAT_INPUT, "gripvalue", "GripValue", SIDE_COUNT, handSubactionPath, &squeezeAction);
|
||||
CreateAction(actionSet, XR_ACTION_TYPE_BOOLEAN_INPUT, "akey", "Akey", SIDE_COUNT, handSubactionPath, &AAction);
|
||||
CreateAction(actionSet, XR_ACTION_TYPE_BOOLEAN_INPUT, "bkey", "Bkey", SIDE_COUNT, handSubactionPath, &BAction);
|
||||
CreateAction(actionSet, XR_ACTION_TYPE_BOOLEAN_INPUT, "xkey", "Xkey", SIDE_COUNT, handSubactionPath, &XAction);
|
||||
|
@ -297,12 +297,12 @@ void TBXR_InitActions( void )
|
|||
bindings[currBinding++] = ActionSuggestedBinding(TriggerTouchAction, triggerTouchPath[SIDE_LEFT]);
|
||||
bindings[currBinding++] = ActionSuggestedBinding(TriggerTouchAction, triggerTouchPath[SIDE_RIGHT]);
|
||||
|
||||
bindings[currBinding++] = ActionSuggestedBinding(sideAction, squeezeClickPath[SIDE_LEFT]);
|
||||
bindings[currBinding++] = ActionSuggestedBinding(sideAction, squeezeClickPath[SIDE_RIGHT]);
|
||||
bindings[currBinding++] = ActionSuggestedBinding(GripAction, squeezeValuePath[SIDE_LEFT]);
|
||||
bindings[currBinding++] = ActionSuggestedBinding(GripAction, squeezeValuePath[SIDE_RIGHT]);
|
||||
bindings[currBinding++] = ActionSuggestedBinding(poseAction, posePath[SIDE_LEFT]);
|
||||
bindings[currBinding++] = ActionSuggestedBinding(poseAction, posePath[SIDE_RIGHT]);
|
||||
bindings[currBinding++] = ActionSuggestedBinding(squeezeClickAction, squeezeClickPath[SIDE_LEFT]);
|
||||
bindings[currBinding++] = ActionSuggestedBinding(squeezeClickAction, squeezeClickPath[SIDE_RIGHT]);
|
||||
bindings[currBinding++] = ActionSuggestedBinding(squeezeAction, squeezeValuePath[SIDE_LEFT]);
|
||||
bindings[currBinding++] = ActionSuggestedBinding(squeezeAction, squeezeValuePath[SIDE_RIGHT]);
|
||||
bindings[currBinding++] = ActionSuggestedBinding(gripAction, posePath[SIDE_LEFT]);
|
||||
bindings[currBinding++] = ActionSuggestedBinding(gripAction, posePath[SIDE_RIGHT]);
|
||||
|
||||
bindings[currBinding++] = ActionSuggestedBinding(homeAction, systemPath[SIDE_LEFT]);
|
||||
bindings[currBinding++] = ActionSuggestedBinding(homeAction, systemPath[SIDE_RIGHT]);
|
||||
|
@ -356,10 +356,10 @@ void TBXR_InitActions( void )
|
|||
bindings[currBinding++] = ActionSuggestedBinding(TriggerTouchAction, triggerTouchPath[SIDE_LEFT]);
|
||||
bindings[currBinding++] = ActionSuggestedBinding(TriggerTouchAction, triggerTouchPath[SIDE_RIGHT]);
|
||||
|
||||
bindings[currBinding++] = ActionSuggestedBinding(GripAction, squeezeValuePath[SIDE_LEFT]);
|
||||
bindings[currBinding++] = ActionSuggestedBinding(GripAction, squeezeValuePath[SIDE_RIGHT]);
|
||||
bindings[currBinding++] = ActionSuggestedBinding(poseAction, posePath[SIDE_LEFT]);
|
||||
bindings[currBinding++] = ActionSuggestedBinding(poseAction, posePath[SIDE_RIGHT]);
|
||||
bindings[currBinding++] = ActionSuggestedBinding(squeezeAction, squeezeValuePath[SIDE_LEFT]);
|
||||
bindings[currBinding++] = ActionSuggestedBinding(squeezeAction, squeezeValuePath[SIDE_RIGHT]);
|
||||
bindings[currBinding++] = ActionSuggestedBinding(gripAction, posePath[SIDE_LEFT]);
|
||||
bindings[currBinding++] = ActionSuggestedBinding(gripAction, posePath[SIDE_RIGHT]);
|
||||
|
||||
bindings[currBinding++] = ActionSuggestedBinding(backAction, menuClickPath[SIDE_LEFT]);
|
||||
|
||||
|
@ -390,7 +390,7 @@ void TBXR_InitActions( void )
|
|||
|
||||
XrActionSpaceCreateInfo actionSpaceInfo = {};
|
||||
actionSpaceInfo.type = XR_TYPE_ACTION_SPACE_CREATE_INFO;
|
||||
actionSpaceInfo.action = poseAction;
|
||||
actionSpaceInfo.action = gripAction;
|
||||
actionSpaceInfo.poseInActionSpace.orientation.w = 1.f;
|
||||
actionSpaceInfo.subactionPath = handSubactionPath[SIDE_LEFT];
|
||||
CHECK_XRCMD(xrCreateActionSpace(gAppState.Session, &actionSpaceInfo, &handSpace[SIDE_LEFT]));
|
||||
|
@ -447,6 +447,14 @@ void TBXR_UpdateControllers( )
|
|||
gAppState.TrackedController[i].Active = (loc.locationFlags & XR_SPACE_LOCATION_POSITION_VALID_BIT) != 0;
|
||||
gAppState.TrackedController[i].Pose = loc.pose;
|
||||
gAppState.TrackedController[i].Velocity = vel;
|
||||
|
||||
loc.type = XR_TYPE_SPACE_LOCATION;
|
||||
loc.next = NULL;
|
||||
res = xrLocateSpace(handSpace[i], gAppState.StageSpace, gAppState.FrameState.predictedDisplayTime, &loc);
|
||||
if (res != XR_SUCCESS) {
|
||||
Com_Printf("xrLocateSpace error: %d", (int)res);
|
||||
}
|
||||
gAppState.TrackedController[i].GripPose = loc.pose;
|
||||
}
|
||||
|
||||
leftRemoteTracking_new = gAppState.TrackedController[0];
|
||||
|
@ -461,7 +469,7 @@ void TBXR_UpdateControllers( )
|
|||
if (GetActionStateBoolean(XTouchAction, SIDE_LEFT).currentState) leftTrackedRemoteState_new.Touches |= xrButton_X;
|
||||
if (GetActionStateBoolean(YAction, SIDE_LEFT).currentState) leftTrackedRemoteState_new.Buttons |= xrButton_Y;
|
||||
if (GetActionStateBoolean(YTouchAction, SIDE_LEFT).currentState) leftTrackedRemoteState_new.Touches |= xrButton_Y;
|
||||
leftTrackedRemoteState_new.GripTrigger = GetActionStateFloat(GripAction, SIDE_LEFT).currentState;
|
||||
leftTrackedRemoteState_new.GripTrigger = GetActionStateFloat(squeezeAction, SIDE_LEFT).currentState;
|
||||
if (leftTrackedRemoteState_new.GripTrigger > 0.5f) leftTrackedRemoteState_new.Buttons |= xrButton_GripTrigger;
|
||||
if (GetActionStateBoolean(touchpadAction, SIDE_LEFT).currentState) leftTrackedRemoteState_new.Buttons |= xrButton_LThumb;
|
||||
if (GetActionStateBoolean(touchpadAction, SIDE_LEFT).currentState) leftTrackedRemoteState_new.Buttons |= xrButton_Joystick;
|
||||
|
@ -479,7 +487,7 @@ void TBXR_UpdateControllers( )
|
|||
if (GetActionStateBoolean(ATouchAction, SIDE_RIGHT).currentState) rightTrackedRemoteState_new.Touches |= xrButton_A;
|
||||
if (GetActionStateBoolean(BAction, SIDE_RIGHT).currentState) rightTrackedRemoteState_new.Buttons |= xrButton_B;
|
||||
if (GetActionStateBoolean(BTouchAction, SIDE_RIGHT).currentState) rightTrackedRemoteState_new.Touches |= xrButton_B;
|
||||
rightTrackedRemoteState_new.GripTrigger = GetActionStateFloat(GripAction, SIDE_RIGHT).currentState;
|
||||
rightTrackedRemoteState_new.GripTrigger = GetActionStateFloat(squeezeAction, SIDE_RIGHT).currentState;
|
||||
if (rightTrackedRemoteState_new.GripTrigger > 0.5f) rightTrackedRemoteState_new.Buttons |= xrButton_GripTrigger;
|
||||
if (GetActionStateBoolean(touchpadAction, SIDE_RIGHT).currentState) rightTrackedRemoteState_new.Buttons |= xrButton_RThumb;
|
||||
if (GetActionStateBoolean(touchpadAction, SIDE_RIGHT).currentState) rightTrackedRemoteState_new.Buttons |= xrButton_Joystick;
|
||||
|
|
|
@ -3,6 +3,7 @@ extern cvar_t *vr_turn_angle;
|
|||
extern cvar_t *vr_positional_factor;
|
||||
extern cvar_t *vr_walkdirection;
|
||||
extern cvar_t *vr_weapon_pitchadjust;
|
||||
extern cvar_t *vr_saber_pitchadjust;
|
||||
extern cvar_t *vr_control_scheme;
|
||||
extern cvar_t *vr_virtual_stock;
|
||||
extern cvar_t *vr_switch_sticks;
|
||||
|
|
|
@ -16,6 +16,7 @@ cvar_t *vr_turn_angle;
|
|||
cvar_t *vr_positional_factor;
|
||||
cvar_t *vr_walkdirection;
|
||||
cvar_t *vr_weapon_pitchadjust;
|
||||
cvar_t *vr_saber_pitchadjust;
|
||||
cvar_t *vr_control_scheme;
|
||||
cvar_t *vr_virtual_stock;
|
||||
cvar_t *vr_switch_sticks;
|
||||
|
|
|
@ -127,9 +127,9 @@ void HandleInput_Default( ovrInputStateTrackedRemote *pDominantTrackedRemoteNew,
|
|||
QuatToYawPitchRoll(pWeapon->Pose.orientation, rotation, vr.weaponangles[ANGLES_DEFAULT]);
|
||||
QuatToYawPitchRoll(pOff->Pose.orientation, rotation, vr.offhandangles[ANGLES_DEFAULT]);
|
||||
|
||||
rotation[PITCH] = 45;
|
||||
//If we are in a saberBlockDebounce thing then add on an angle
|
||||
//Lerped upon how far from the start of the saber move
|
||||
rotation[PITCH] = vr_saber_pitchadjust->value;
|
||||
if (vr.saberBlockDebounce > cl.serverTime) {
|
||||
float lerp = 0.0f;
|
||||
//Where are we in the lerp
|
||||
|
@ -188,8 +188,8 @@ void HandleInput_Default( ovrInputStateTrackedRemote *pDominantTrackedRemoteNew,
|
|||
}
|
||||
}
|
||||
|
||||
QuatToYawPitchRoll(pWeapon->Pose.orientation, rotation, vr.weaponangles[ANGLES_SABER]);
|
||||
QuatToYawPitchRoll(pOff->Pose.orientation, rotation, vr.offhandangles[ANGLES_SABER]);
|
||||
QuatToYawPitchRoll(pWeapon->GripPose.orientation, rotation, vr.weaponangles[ANGLES_SABER]);
|
||||
QuatToYawPitchRoll(pOff->GripPose.orientation, rotation, vr.offhandangles[ANGLES_SABER]);
|
||||
|
||||
rotation[PITCH] = vr_weapon_pitchadjust->value;
|
||||
QuatToYawPitchRoll(pWeapon->Pose.orientation, rotation, vr.weaponangles[ANGLES_ADJUSTED]);
|
||||
|
|
|
@ -45,9 +45,9 @@ void HandleInput_WeaponAlign( ovrInputStateTrackedRemote *pDominantTrackedRemote
|
|||
|
||||
//if we are in saber block debounce, don't update the saber angles
|
||||
if (vr.saberBlockDebounce < cl.serverTime) {
|
||||
rotation[PITCH] = 45;
|
||||
QuatToYawPitchRoll(pDominantTracking->Pose.orientation, rotation, vr.weaponangles[ANGLES_SABER]);
|
||||
QuatToYawPitchRoll(pOffTracking->Pose.orientation, rotation, vr.offhandangles[ANGLES_SABER]);
|
||||
rotation[PITCH] = vr_saber_pitchadjust->value;
|
||||
QuatToYawPitchRoll(pDominantTracking->GripPose.orientation, rotation, vr.weaponangles[ANGLES_SABER]);
|
||||
QuatToYawPitchRoll(pOffTracking->GripPose.orientation, rotation, vr.offhandangles[ANGLES_SABER]);
|
||||
}
|
||||
|
||||
rotation[PITCH] = vr_weapon_pitchadjust->value;
|
||||
|
|
|
@ -329,6 +329,7 @@ void VR_Init()
|
|||
vr_positional_factor = Cvar_Get( "vr_positional_factor", "12", CVAR_ARCHIVE);
|
||||
vr_walkdirection = Cvar_Get( "vr_walkdirection", "1", CVAR_ARCHIVE);
|
||||
vr_weapon_pitchadjust = Cvar_Get( "vr_weapon_pitchadjust", "-20.0", CVAR_ARCHIVE);
|
||||
vr_saber_pitchadjust = Cvar_Get( "vr_saber_pitchadjust", "-25.0", CVAR_ARCHIVE);
|
||||
vr_virtual_stock = Cvar_Get( "vr_virtual_stock", "0", CVAR_ARCHIVE);
|
||||
|
||||
//Defaults
|
||||
|
|
|
@ -71,6 +71,7 @@ typedef struct {
|
|||
typedef struct {
|
||||
GLboolean Active;
|
||||
XrPosef Pose;
|
||||
XrPosef GripPose;
|
||||
XrSpaceVelocity Velocity;
|
||||
} ovrTrackedController;
|
||||
|
||||
|
|
|
@ -241,6 +241,7 @@ void VR_Init()
|
|||
vr_positional_factor = Cvar_Get( "vr_positional_factor", "12", CVAR_ARCHIVE);
|
||||
vr_walkdirection = Cvar_Get( "vr_walkdirection", "1", CVAR_ARCHIVE);
|
||||
vr_weapon_pitchadjust = Cvar_Get( "vr_weapon_pitchadjust", "-20.0", CVAR_ARCHIVE);
|
||||
vr_saber_pitchadjust = Cvar_Get( "vr_saber_pitchadjust", "-20.0", CVAR_ARCHIVE);
|
||||
vr_virtual_stock = Cvar_Get( "vr_virtual_stock", "0", CVAR_ARCHIVE);
|
||||
|
||||
//Defaults
|
||||
|
|
|
@ -94,6 +94,7 @@ typedef struct {
|
|||
typedef struct {
|
||||
GLboolean Active;
|
||||
XrPosef Pose;
|
||||
XrPosef GripPose;
|
||||
XrSpaceVelocity Velocity;
|
||||
} ovrTrackedController;
|
||||
|
||||
|
|
|
@ -903,7 +903,7 @@ qboolean G_StandardHumanoid( gentity_t *self )
|
|||
return qfalse;
|
||||
}
|
||||
const char *GLAName = gi.G2API_GetGLAName( &self->ghoul2[self->playerModel] );
|
||||
assert(GLAName);
|
||||
//assert(GLAName);
|
||||
if (GLAName)
|
||||
{
|
||||
if ( !Q_stricmpn( "models/players/_humanoid", GLAName, 24 ) )///_humanoid", GLAName, 36) )
|
||||
|
|
|
@ -91,9 +91,15 @@ LANG_ENGLISH "Enables left-handed mode."
|
|||
REFERENCE WEAPON_PITCH_ITEM
|
||||
LANG_ENGLISH "Weapon Pitch:"
|
||||
|
||||
REFERENCE SABER_PITCH_ITEM
|
||||
LANG_ENGLISH "Saber Pitch:"
|
||||
|
||||
REFERENCE WEAPON_PITCH_DESC
|
||||
LANG_ENGLISH "Sets aiming pitch of held weapon."
|
||||
|
||||
REFERENCE SABER_PITCH_DESC
|
||||
LANG_ENGLISH "Sets pitch of saber."
|
||||
|
||||
REFERENCE TWO_HANDED_ITEM
|
||||
LANG_ENGLISH "Two-Handed Mode:"
|
||||
|
||||
|
|
|
@ -117,10 +117,18 @@ REFERENCE WEAPON_PITCH_ITEM
|
|||
LANG_ENGLISH "Weapon Pitch:"
|
||||
LANG_FRENCH "#same"
|
||||
|
||||
REFERENCE SABER_PITCH_ITEM
|
||||
LANG_ENGLISH "Saber Pitch:"
|
||||
LANG_FRENCH "#same"
|
||||
|
||||
REFERENCE WEAPON_PITCH_DESC
|
||||
LANG_ENGLISH "Sets aiming pitch of held weapon."
|
||||
LANG_FRENCH "#same"
|
||||
|
||||
REFERENCE SABER_PITCH_DESC
|
||||
LANG_ENGLISH "Sets pitch of saber."
|
||||
LANG_FRENCH "#same"
|
||||
|
||||
REFERENCE TWO_HANDED_ITEM
|
||||
LANG_ENGLISH "Two-Handed Mode:"
|
||||
LANG_FRENCH "#same"
|
||||
|
|
|
@ -117,10 +117,18 @@ REFERENCE WEAPON_PITCH_ITEM
|
|||
LANG_ENGLISH "Weapon Pitch:"
|
||||
LANG_GERMAN "#same"
|
||||
|
||||
REFERENCE SABER_PITCH_ITEM
|
||||
LANG_ENGLISH "Saber Pitch:"
|
||||
LANG_GERMAN "#same"
|
||||
|
||||
REFERENCE WEAPON_PITCH_DESC
|
||||
LANG_ENGLISH "Sets aiming pitch of held weapon."
|
||||
LANG_GERMAN "#same"
|
||||
|
||||
REFERENCE SABER_PITCH_DESC
|
||||
LANG_ENGLISH "Sets pitch of saber."
|
||||
LANG_GERMAN "#same"
|
||||
|
||||
REFERENCE TWO_HANDED_ITEM
|
||||
LANG_ENGLISH "Two-Handed Mode:"
|
||||
LANG_GERMAN "#same"
|
||||
|
|
|
@ -115,11 +115,19 @@ LANG_SPANISH "#same"
|
|||
|
||||
REFERENCE WEAPON_PITCH_ITEM
|
||||
LANG_ENGLISH "Weapon Pitch:"
|
||||
LANG_SPANISH "#same"
|
||||
LANG_SPANISH "#same"
|
||||
|
||||
REFERENCE SABER_PITCH_ITEM
|
||||
LANG_ENGLISH "Saber Pitch:"
|
||||
LANG_SPANISH "#same"
|
||||
|
||||
REFERENCE WEAPON_PITCH_DESC
|
||||
LANG_ENGLISH "Sets aiming pitch of held weapon."
|
||||
LANG_SPANISH "#same"
|
||||
LANG_SPANISH "#same"
|
||||
|
||||
REFERENCE SABER_PITCH_DESC
|
||||
LANG_ENGLISH "Sets pitch of saber."
|
||||
LANG_SPANISH "#same"
|
||||
|
||||
REFERENCE TWO_HANDED_ITEM
|
||||
LANG_ENGLISH "Two-Handed Mode:"
|
||||
|
|
|
@ -1104,9 +1104,9 @@
|
|||
{
|
||||
name none
|
||||
group weaponcontrols
|
||||
type ITEM_TYPE_YESNO
|
||||
text @MENUS_VR_TWO_HANDED_ITEM
|
||||
cvar "vr_two_handed_weapons"
|
||||
type ITEM_TYPE_SLIDER
|
||||
text @MENUS_VR_SABER_PITCH_ITEM
|
||||
cvarfloat "vr_saber_pitchadjust" 20 -45 5
|
||||
rect 260 240 340 14
|
||||
textalign ITEM_ALIGN_RIGHT
|
||||
textalignx 174
|
||||
|
@ -1115,7 +1115,7 @@
|
|||
textscale 1
|
||||
forecolor .615 .615 .956 0.0
|
||||
visible 0
|
||||
descText @MENUS_VR_TWO_HANDED_DESC
|
||||
descText @MENUS_VR_SABER_PITCH_DESC
|
||||
action
|
||||
{
|
||||
play sound/interface/button1
|
||||
|
@ -1137,8 +1137,8 @@
|
|||
name none
|
||||
group weaponcontrols
|
||||
type ITEM_TYPE_YESNO
|
||||
text @MENUS_VR_GUN_STOCK_ITEM
|
||||
cvar "vr_virtual_stock"
|
||||
text @MENUS_VR_TWO_HANDED_ITEM
|
||||
cvar "vr_two_handed_weapons"
|
||||
rect 260 260 340 14
|
||||
textalign ITEM_ALIGN_RIGHT
|
||||
textalignx 174
|
||||
|
@ -1147,7 +1147,7 @@
|
|||
textscale 1
|
||||
forecolor .615 .615 .956 0.0
|
||||
visible 0
|
||||
descText @MENUS_VR_GUN_STOCK_DESC
|
||||
descText @MENUS_VR_TWO_HANDED_DESC
|
||||
action
|
||||
{
|
||||
play sound/interface/button1
|
||||
|
@ -1168,9 +1168,9 @@
|
|||
{
|
||||
name none
|
||||
group weaponcontrols
|
||||
type ITEM_TYPE_SLIDER
|
||||
text @MENUS_VR_WEAPON_VELOCITY_TRIGGER_ITEM
|
||||
cvarfloat "vr_weapon_velocity_trigger" 0 1.5 2.5
|
||||
type ITEM_TYPE_YESNO
|
||||
text @MENUS_VR_GUN_STOCK_ITEM
|
||||
cvar "vr_virtual_stock"
|
||||
rect 260 280 340 14
|
||||
textalign ITEM_ALIGN_RIGHT
|
||||
textalignx 174
|
||||
|
@ -1179,7 +1179,7 @@
|
|||
textscale 1
|
||||
forecolor .615 .615 .956 0.0
|
||||
visible 0
|
||||
descText @MENUS_VR_WEAPON_VELOCITY_TRIGGER_DESC
|
||||
descText @MENUS_VR_GUN_STOCK_DESC
|
||||
action
|
||||
{
|
||||
play sound/interface/button1
|
||||
|
@ -1196,6 +1196,38 @@
|
|||
}
|
||||
}
|
||||
|
||||
itemDef
|
||||
{
|
||||
name none
|
||||
group weaponcontrols
|
||||
type ITEM_TYPE_SLIDER
|
||||
text @MENUS_VR_WEAPON_VELOCITY_TRIGGER_ITEM
|
||||
cvarfloat "vr_weapon_velocity_trigger" 0 1.5 2.5
|
||||
rect 260 300 340 14
|
||||
textalign ITEM_ALIGN_RIGHT
|
||||
textalignx 174
|
||||
textaligny 0
|
||||
font 4
|
||||
textscale 1
|
||||
forecolor .615 .615 .956 0.0
|
||||
visible 0
|
||||
descText @MENUS_VR_WEAPON_VELOCITY_TRIGGER_DESC
|
||||
action
|
||||
{
|
||||
play sound/interface/button1
|
||||
}
|
||||
|
||||
mouseenter
|
||||
{
|
||||
show button_glow
|
||||
setitemrect button_glow 260 300 340 20
|
||||
}
|
||||
mouseexit
|
||||
{
|
||||
hide button_glow
|
||||
}
|
||||
}
|
||||
|
||||
itemDef
|
||||
{
|
||||
name none
|
||||
|
@ -1209,7 +1241,7 @@
|
|||
@MENUS_VR_SABER_3RD_PERSON_MANUAL 1
|
||||
@MENUS_VR_SABER_3RD_PERSON_AUTO 2
|
||||
}
|
||||
rect 260 300 340 14
|
||||
rect 260 320 340 14
|
||||
textalign ITEM_ALIGN_RIGHT
|
||||
textalignx 174
|
||||
textaligny 0
|
||||
|
@ -1226,7 +1258,7 @@
|
|||
mouseenter
|
||||
{
|
||||
show button_glow
|
||||
setitemrect button_glow 260 300 340 20
|
||||
setitemrect button_glow 260 320 340 20
|
||||
}
|
||||
mouseexit
|
||||
{
|
||||
|
|
|
@ -1285,9 +1285,9 @@
|
|||
{
|
||||
name none
|
||||
group weaponcontrols
|
||||
type ITEM_TYPE_YESNO
|
||||
text @MENUS_VR_TWO_HANDED_ITEM
|
||||
cvar "vr_two_handed_weapons"
|
||||
type ITEM_TYPE_SLIDER
|
||||
text @MENUS_VR_SABER_PITCH_ITEM
|
||||
cvarfloat "vr_saber_pitchadjust" 20 -45 5
|
||||
rect 260 240 340 14
|
||||
textalign ITEM_ALIGN_RIGHT
|
||||
textalignx 174
|
||||
|
@ -1296,7 +1296,7 @@
|
|||
textscale 1
|
||||
forecolor .615 .615 .956 1.0
|
||||
visible 0
|
||||
descText @MENUS_VR_TWO_HANDED_DESC
|
||||
descText @MENUS_VR_SABER_PITCH_DESC
|
||||
action
|
||||
{
|
||||
play sound/interface/button1
|
||||
|
@ -1317,8 +1317,8 @@
|
|||
name none
|
||||
group weaponcontrols
|
||||
type ITEM_TYPE_YESNO
|
||||
text @MENUS_VR_GUN_STOCK_ITEM
|
||||
cvar "vr_virtual_stock"
|
||||
text @MENUS_VR_TWO_HANDED_ITEM
|
||||
cvar "vr_two_handed_weapons"
|
||||
rect 260 260 340 14
|
||||
textalign ITEM_ALIGN_RIGHT
|
||||
textalignx 174
|
||||
|
@ -1327,7 +1327,7 @@
|
|||
textscale 1
|
||||
forecolor .615 .615 .956 1.0
|
||||
visible 0
|
||||
descText @MENUS_VR_GUN_STOCK_DESC
|
||||
descText @MENUS_VR_TWO_HANDED_DESC
|
||||
action
|
||||
{
|
||||
play sound/interface/button1
|
||||
|
@ -1347,9 +1347,9 @@
|
|||
{
|
||||
name none
|
||||
group weaponcontrols
|
||||
type ITEM_TYPE_SLIDER
|
||||
text @MENUS_VR_WEAPON_VELOCITY_TRIGGER_ITEM
|
||||
cvarfloat "vr_weapon_velocity_trigger" 0 1.5 2.5
|
||||
type ITEM_TYPE_YESNO
|
||||
text @MENUS_VR_GUN_STOCK_ITEM
|
||||
cvar "vr_virtual_stock"
|
||||
rect 260 280 340 14
|
||||
textalign ITEM_ALIGN_RIGHT
|
||||
textalignx 174
|
||||
|
@ -1358,7 +1358,7 @@
|
|||
textscale 1
|
||||
forecolor .615 .615 .956 1.0
|
||||
visible 0
|
||||
descText @MENUS_VR_WEAPON_VELOCITY_TRIGGER_DESC
|
||||
descText @MENUS_VR_GUN_STOCK_DESC
|
||||
action
|
||||
{
|
||||
play sound/interface/button1
|
||||
|
@ -1374,6 +1374,37 @@
|
|||
}
|
||||
}
|
||||
|
||||
itemDef
|
||||
{
|
||||
name none
|
||||
group weaponcontrols
|
||||
type ITEM_TYPE_SLIDER
|
||||
text @MENUS_VR_WEAPON_VELOCITY_TRIGGER_ITEM
|
||||
cvarfloat "vr_weapon_velocity_trigger" 0 1.5 2.5
|
||||
rect 260 300 340 14
|
||||
textalign ITEM_ALIGN_RIGHT
|
||||
textalignx 174
|
||||
textaligny 0
|
||||
font 4
|
||||
textscale 1
|
||||
forecolor .615 .615 .956 1.0
|
||||
visible 0
|
||||
descText @MENUS_VR_WEAPON_VELOCITY_TRIGGER_DESC
|
||||
action
|
||||
{
|
||||
play sound/interface/button1
|
||||
}
|
||||
|
||||
mouseenter
|
||||
{
|
||||
show highlight6
|
||||
}
|
||||
mouseexit
|
||||
{
|
||||
hide highlight6
|
||||
}
|
||||
}
|
||||
|
||||
itemDef
|
||||
{
|
||||
name none
|
||||
|
@ -1387,7 +1418,7 @@
|
|||
@MENUS_VR_SABER_3RD_PERSON_MANUAL 1
|
||||
@MENUS_VR_SABER_3RD_PERSON_AUTO 2
|
||||
}
|
||||
rect 260 300 340 14
|
||||
rect 260 320 340 14
|
||||
textalign ITEM_ALIGN_RIGHT
|
||||
textalignx 174
|
||||
textaligny 0
|
||||
|
@ -1403,11 +1434,11 @@
|
|||
|
||||
mouseenter
|
||||
{
|
||||
show highlight6
|
||||
show highlight7
|
||||
}
|
||||
mouseexit
|
||||
{
|
||||
hide highlight6
|
||||
hide highlight7
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -3,7 +3,7 @@ CONFIG W:\bin\striped.cfg
|
|||
ID 100
|
||||
REFERENCE MENUS_VR
|
||||
DESCRIPTION "VR Menu Localizations"
|
||||
COUNT 164
|
||||
COUNT 166
|
||||
INDEX 0
|
||||
{
|
||||
REFERENCE COMMON_CONTROLS_ITEM
|
||||
|
@ -824,3 +824,13 @@ INDEX 163
|
|||
REFERENCE RESTART_JKXR_TO_APPLY
|
||||
TEXT_LANGUAGE1 "You will need to manually restart JKXR."
|
||||
}
|
||||
INDEX 164
|
||||
{
|
||||
REFERENCE SABER_PITCH_ITEM
|
||||
TEXT_LANGUAGE1 "Saber Pitch:"
|
||||
}
|
||||
INDEX 165
|
||||
{
|
||||
REFERENCE SABER_PITCH_DESC
|
||||
TEXT_LANGUAGE1 "Sets pitch of Saber."
|
||||
}
|
|
@ -1600,9 +1600,9 @@
|
|||
{
|
||||
name none
|
||||
group weaponcontrols
|
||||
type ITEM_TYPE_YESNO
|
||||
text @MENUS_VR_TWO_HANDED_ITEM
|
||||
cvar "vr_two_handed_weapons"
|
||||
type ITEM_TYPE_SLIDER
|
||||
text @MENUS_VR_SABER_PITCH_ITEM
|
||||
cvarfloat "vr_saber_pitchadjust" 20 -45 5
|
||||
rect 305 231 300 20
|
||||
textalign ITEM_ALIGN_RIGHT
|
||||
textalignx 151
|
||||
|
@ -1612,7 +1612,7 @@
|
|||
forecolor 1 1 1 1
|
||||
visible 0
|
||||
// appearance_slot 2
|
||||
descText @MENUS_VR_TWO_HANDED_DESC
|
||||
descText @MENUS_VR_SABER_PITCH_DESC
|
||||
action
|
||||
{
|
||||
play sound/interface/button1
|
||||
|
@ -1635,8 +1635,8 @@
|
|||
name none
|
||||
group weaponcontrols
|
||||
type ITEM_TYPE_YESNO
|
||||
text @MENUS_VR_GUN_STOCK_ITEM
|
||||
cvar "vr_virtual_stock"
|
||||
text @MENUS_VR_TWO_HANDED_ITEM
|
||||
cvar "vr_two_handed_weapons"
|
||||
rect 305 251 300 20
|
||||
textalign ITEM_ALIGN_RIGHT
|
||||
textalignx 151
|
||||
|
@ -1646,7 +1646,7 @@
|
|||
forecolor 1 1 1 1
|
||||
visible 0
|
||||
// appearance_slot 2
|
||||
descText @MENUS_VR_GUN_STOCK_DESC
|
||||
descText @MENUS_VR_TWO_HANDED_DESC
|
||||
action
|
||||
{
|
||||
play sound/interface/button1
|
||||
|
@ -1668,9 +1668,9 @@
|
|||
{
|
||||
name none
|
||||
group weaponcontrols
|
||||
type ITEM_TYPE_SLIDER
|
||||
text @MENUS_VR_WEAPON_VELOCITY_TRIGGER_ITEM
|
||||
cvarfloat "vr_weapon_velocity_trigger" 0 1.5 2.5
|
||||
type ITEM_TYPE_YESNO
|
||||
text @MENUS_VR_GUN_STOCK_ITEM
|
||||
cvar "vr_virtual_stock"
|
||||
rect 305 271 300 20
|
||||
textalign ITEM_ALIGN_RIGHT
|
||||
textalignx 151
|
||||
|
@ -1680,7 +1680,7 @@
|
|||
forecolor 1 1 1 1
|
||||
visible 0
|
||||
// appearance_slot 2
|
||||
descText @MENUS_VR_WEAPON_VELOCITY_TRIGGER_DESC
|
||||
descText @MENUS_VR_GUN_STOCK_DESC
|
||||
action
|
||||
{
|
||||
play sound/interface/button1
|
||||
|
@ -1698,6 +1698,40 @@
|
|||
|
||||
}
|
||||
|
||||
itemDef
|
||||
{
|
||||
name none
|
||||
group weaponcontrols
|
||||
type ITEM_TYPE_SLIDER
|
||||
text @MENUS_VR_WEAPON_VELOCITY_TRIGGER_ITEM
|
||||
cvarfloat "vr_weapon_velocity_trigger" 0 1.5 2.5
|
||||
rect 305 291 300 20
|
||||
textalign ITEM_ALIGN_RIGHT
|
||||
textalignx 151
|
||||
textaligny -2
|
||||
font 2
|
||||
textscale 0.8
|
||||
forecolor 1 1 1 1
|
||||
visible 0
|
||||
// appearance_slot 2
|
||||
descText @MENUS_VR_WEAPON_VELOCITY_TRIGGER_DESC
|
||||
action
|
||||
{
|
||||
play sound/interface/button1
|
||||
}
|
||||
|
||||
mouseenter
|
||||
{
|
||||
show highlight7
|
||||
}
|
||||
|
||||
mouseexit
|
||||
{
|
||||
hide highlight7
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
itemDef
|
||||
{
|
||||
name none
|
||||
|
@ -1711,7 +1745,7 @@
|
|||
@MENUS_VR_SABER_3RD_PERSON_MANUAL 1
|
||||
@MENUS_VR_SABER_3RD_PERSON_AUTO 2
|
||||
}
|
||||
rect 305 291 300 20
|
||||
rect 305 311 300 20
|
||||
textalign ITEM_ALIGN_RIGHT
|
||||
textalignx 151
|
||||
textaligny -2
|
||||
|
@ -1728,12 +1762,12 @@
|
|||
|
||||
mouseenter
|
||||
{
|
||||
show highlight7
|
||||
show highlight8
|
||||
}
|
||||
|
||||
mouseexit
|
||||
{
|
||||
hide highlight7
|
||||
hide highlight8
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -1599,9 +1599,9 @@
|
|||
{
|
||||
name none
|
||||
group weaponcontrols
|
||||
type ITEM_TYPE_YESNO
|
||||
text @MENUS_VR_TWO_HANDED_ITEM
|
||||
cvar "vr_two_handed_weapons"
|
||||
type ITEM_TYPE_SLIDER
|
||||
text @MENUS_VR_SABER_PITCH_ITEM
|
||||
cvarfloat "vr_saber_pitchadjust" 20 -45 5
|
||||
rect 305 231 300 20
|
||||
textalign ITEM_ALIGN_RIGHT
|
||||
textalignx 151
|
||||
|
@ -1611,7 +1611,7 @@
|
|||
forecolor 1 1 1 1
|
||||
visible 0
|
||||
// appearance_slot 2
|
||||
descText @MENUS_VR_TWO_HANDED_DESC
|
||||
descText @MENUS_VR_SABER_PITCH_DESC
|
||||
action
|
||||
{
|
||||
play sound/interface/button1
|
||||
|
@ -1634,8 +1634,8 @@
|
|||
name none
|
||||
group weaponcontrols
|
||||
type ITEM_TYPE_YESNO
|
||||
text @MENUS_VR_GUN_STOCK_ITEM
|
||||
cvar "vr_virtual_stock"
|
||||
text @MENUS_VR_TWO_HANDED_ITEM
|
||||
cvar "vr_two_handed_weapons"
|
||||
rect 305 251 300 20
|
||||
textalign ITEM_ALIGN_RIGHT
|
||||
textalignx 151
|
||||
|
@ -1645,7 +1645,7 @@
|
|||
forecolor 1 1 1 1
|
||||
visible 0
|
||||
// appearance_slot 2
|
||||
descText @MENUS_VR_GUN_STOCK_DESC
|
||||
descText @MENUS_VR_TWO_HANDED_DESC
|
||||
action
|
||||
{
|
||||
play sound/interface/button1
|
||||
|
@ -1667,9 +1667,9 @@
|
|||
{
|
||||
name none
|
||||
group weaponcontrols
|
||||
type ITEM_TYPE_SLIDER
|
||||
text @MENUS_VR_WEAPON_VELOCITY_TRIGGER_ITEM
|
||||
cvarfloat "vr_weapon_velocity_trigger" 0 1.5 2.5
|
||||
type ITEM_TYPE_YESNO
|
||||
text @MENUS_VR_GUN_STOCK_ITEM
|
||||
cvar "vr_virtual_stock"
|
||||
rect 305 271 300 20
|
||||
textalign ITEM_ALIGN_RIGHT
|
||||
textalignx 151
|
||||
|
@ -1679,7 +1679,7 @@
|
|||
forecolor 1 1 1 1
|
||||
visible 0
|
||||
// appearance_slot 2
|
||||
descText @MENUS_VR_WEAPON_VELOCITY_TRIGGER_DESC
|
||||
descText @MENUS_VR_GUN_STOCK_DESC
|
||||
action
|
||||
{
|
||||
play sound/interface/button1
|
||||
|
@ -1697,6 +1697,40 @@
|
|||
|
||||
}
|
||||
|
||||
itemDef
|
||||
{
|
||||
name none
|
||||
group weaponcontrols
|
||||
type ITEM_TYPE_SLIDER
|
||||
text @MENUS_VR_WEAPON_VELOCITY_TRIGGER_ITEM
|
||||
cvarfloat "vr_weapon_velocity_trigger" 0 1.5 2.5
|
||||
rect 305 291 300 20
|
||||
textalign ITEM_ALIGN_RIGHT
|
||||
textalignx 151
|
||||
textaligny -2
|
||||
font 2
|
||||
textscale 0.8
|
||||
forecolor 1 1 1 1
|
||||
visible 0
|
||||
// appearance_slot 2
|
||||
descText @MENUS_VR_WEAPON_VELOCITY_TRIGGER_DESC
|
||||
action
|
||||
{
|
||||
play sound/interface/button1
|
||||
}
|
||||
|
||||
mouseenter
|
||||
{
|
||||
show highlight7
|
||||
}
|
||||
|
||||
mouseexit
|
||||
{
|
||||
hide highlight7
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
itemDef
|
||||
{
|
||||
name none
|
||||
|
@ -1710,7 +1744,7 @@
|
|||
@MENUS_VR_SABER_3RD_PERSON_MANUAL 1
|
||||
@MENUS_VR_SABER_3RD_PERSON_AUTO 2
|
||||
}
|
||||
rect 305 291 300 20
|
||||
rect 305 311 300 20
|
||||
textalign ITEM_ALIGN_RIGHT
|
||||
textalignx 151
|
||||
textaligny -2
|
||||
|
@ -1727,12 +1761,12 @@
|
|||
|
||||
mouseenter
|
||||
{
|
||||
show highlight7
|
||||
show highlight8
|
||||
}
|
||||
|
||||
mouseexit
|
||||
{
|
||||
hide highlight7
|
||||
hide highlight8
|
||||
}
|
||||
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue